{
 "cells": [
  {
   "cell_type": "markdown",
   "id": "6d6475cc",
   "metadata": {},
   "source": [
    "# 基于backtrader的量化交易策略\n"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "cde4fee1",
   "metadata": {},
   "source": [
    "### 基于backtrader的通用交易策略框架\n",
    "\n",
    "* 使用这个通用策略的原因：\n",
    "\n",
    "1. 不用去了解backtrader，简单易学。\n",
    "2. 具备可迁移性，未来你用其他平台的交易工具，这里的代码很好迁移\n",
    "3. 完全在交易程序外确定买卖方案，可以享受更丰富和高效的工具支持。如果在程序内部要进行数据分析，意味着需要把所有股票导入进去，由于backtrader自己特殊的数据结构，方便了交易的同时降低了数据分析的效率，因而常常导致面对大量股票运算速度被拖慢。\n",
    "4. 程序外定买卖方案有一个缺点，就是没有办法利用组合投资的实时收益数据。这一点对于初学者或是要求不高的从业者，应当是可以接受的。"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 17,
   "id": "bc55a7d7",
   "metadata": {},
   "outputs": [],
   "source": [
    "import sqlite3\n",
    "import pandas as pd  \n",
    "import talib\n",
    "from datetime import datetime\n",
    "import backtrader as bt\n",
    "import matplotlib.pyplot as plt\n",
    "import akshare as ak\n",
    "import numpy as np\n",
    "%matplotlib inline   \n",
    "\n",
    "#正常显示画图时出现的中文和负号\n",
    "from pylab import mpl\n",
    "\n",
    "mpl.rcParams['font.sans-serif']=['SimHei']\n",
    "mpl.rcParams['axes.unicode_minus']=False"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 18,
   "id": "93c2e97c",
   "metadata": {},
   "outputs": [],
   "source": [
    "# 读取全量数据\n",
    "def read_hq():\n",
    "    \n",
    "    conn=sqlite3.connect(r'F:\\BaiduNetdiskDownload\\stock_2018_daily\\stock_2018.db')\n",
    "    #stock_daily=pd.read_sql(\"select * from stock_daily\",con=conn)\n",
    "    stock_daily=pd.read_sql(\"select * from stock_daily where 股票代码>'003000.SZ'\",con=conn)\n",
    "\n",
    "    stock_daily.columns=['index', 'date', '股票代码', '股票简称', 'open', 'high', 'low', 'close', 'volume',\n",
    "           '成交额(千元)', '换手率(%)', '量比', '市盈率(静态)', '市盈率(TTM)', '市盈率(动态)', '市净率',\n",
    "           '市销率', '市销率(TTM)', '股息率(%)', '股息率(TTM)(%)', '总股本(万股)', '流通股本(万股)',\n",
    "           '总市值(万元)', '流通市值(万元)']\n",
    "    stock_daily[\"date\"]=stock_daily[\"date\"].astype(\"str\").astype(\"datetime64[ns]\")\n",
    "    stock_daily.set_index(\"date\",inplace=True,drop=False)\n",
    "    stock_daily[\"openinterest\"]=0\n",
    "    return stock_daily\n",
    "\n",
    "#从全量数据中抽取个别股票数据\n",
    "def get_data_1(syboml,time,stock_d):\n",
    "    stock=stock_d[stock_d[\"股票代码\"]==syboml][[\"open\",\"high\",\"low\",\"close\",\"volume\",\"openinterest\"]]\n",
    "    stock=pd.concat([stock,time],axis=1).fillna(method=\"bfill\").fillna(method=\"ffill\")\n",
    "    #stock=pd.concat([stock,time],axis=1).fillna(-1)#对每只股票缺失的交易日进行补齐\n",
    "    return stock[[\"open\",\"high\",\"low\",\"close\",\"volume\",\"openinterest\"]]\n",
    "\n",
    "\n",
    "#定义单个交易日中的策略\n",
    "class my_strategy_date_2(bt.Strategy):\n",
    "    #全局设定交易策略的参数\n",
    "    cash_value={}\n",
    "    params = (\n",
    "        (\"sell_d\",{}),(\"buy_d\",{})  # 注意要有逗号！！\n",
    "    )\n",
    "\n",
    "    def __init__(self):\n",
    "        # 初始化交易指令、买卖价格和手续费\n",
    "        self.order = None\n",
    "\n",
    "    #单个交易日中的策略：先比较当天是否在买入或者卖出的日期中，如果在就获取日期对应的股票列表进行买卖操作\n",
    "    def next(self):\n",
    "        # 检查是否持仓 \n",
    "        #print(str(self.datetime.date(0)))\n",
    "        self.cash_value.update({str(self.datetime.date(0)):self.broker.getvalue()})#记录持仓\n",
    "        if str(self.datetime.date(0)) in self.params.sell_d.keys(): # 卖出目标股票\n",
    "            s_list=self.params.sell_d[str(self.datetime.date(0))]\n",
    "            for i in s_list:\n",
    "                self.order_target_percent(target=0,data=i)\n",
    "        if str(self.datetime.date(0)) in self.params.buy_d.keys(): # 买入目标股票\n",
    "            s_list=self.params.buy_d[str(self.datetime.date(0))]\n",
    "            for i in s_list:\n",
    "                self.order_target_percent(target=0.9/len(s_list),data=i)\n",
    "                \n",
    "\n",
    "    # 下面两个函数log与notify_order都是为了在交易过程中输出交易记录和其他信息        \n",
    "    def log(self, txt, dt=None):\n",
    "        ''' 输出日志'''\n",
    "        dt = dt or self.datas[0].datetime.date(0) # 拿现在的日期\n",
    "        print('%s, %s' % (dt.isoformat(), txt))\n",
    "\n",
    "    def notify_order(self, order):\n",
    "        if order.status in [order.Submitted, order.Accepted]:\n",
    "            # Buy/Sell order submitted/accepted to/by broker - Nothing to do\n",
    "            return\n",
    "\n",
    "        # Check if an order has been completed\n",
    "        # Attention: broker could reject order if not enough cash\n",
    "        if order.status in [order.Completed, order.Canceled, order.Margin]:\n",
    "            if order.isbuy():\n",
    "                self.log(f\"\"\"买入{order.data._name}, 成交量{order.executed.size}，成交价{order.executed.price:.2f}\"\"\")\n",
    "            elif order.issell():\n",
    "                self.log(f\"\"\"卖出{order.data._name}, 成交量{order.executed.size}，成交价{order.executed.price:.2f}\"\"\")\n",
    "            self.bar_executed = len(self)\n",
    "\n",
    "        # Write down: no pending order\n",
    "        self.order = None\n",
    "\n",
    "#读入策略并在所有交易日执行\n",
    "def huice_run_num(start,end,buy_date,sell_date,stock_daily_x,stock_list,strategy):\n",
    "\n",
    "    #实例化一个交易程序\n",
    "    cerebro = bt.Cerebro()\n",
    "\n",
    "    #把所有涉及到的股票数据塞入交易程序\n",
    "    time_jy=pd.Series(range(0,len(stock_daily_x.date.unique())),index=stock_daily_x.date.unique()).sort_index()#构建包含所有交易日的序列\n",
    "    for i in stock_list:#逐个输入涉及到的所有股票数据\n",
    "        stock=get_data_1(i,time_jy,stock_daily_x)\n",
    "        data = bt.feeds.PandasData(dataname=stock,fromdate=start,todate=end)           \n",
    "        cerebro.adddata(data,name=i) \n",
    "    \n",
    "    #交易程序读入对应策略\n",
    "    cerebro.addstrategy(strategy,sell_d=sell_date,buy_d=buy_date) \n",
    "    cerebro.broker.setcash(1000000) #定义初始金额\n",
    "    cerebro.broker.setcommission(commission=0.002)#定义佣金\n",
    "\n",
    "\n",
    "    #下面是数据交易完成后的相关评估参数\n",
    "    print(start.date(),end.date())\n",
    "    print('初始资金: %.2f' % cerebro.broker.getvalue())\n",
    "    cerebro.addanalyzer(bt.analyzers.SharpeRatio, _name = 'SharpeRatio')#获得夏普率\n",
    "    cerebro.addanalyzer(bt.analyzers.DrawDown, _name='DW')#获得回撤\n",
    "    results = cerebro.run()\n",
    "    strat = results[0]\n",
    "    print('最终资金: %.2f' % cerebro.broker.getvalue())\n",
    "    print('夏普比率:', strat.analyzers.SharpeRatio.get_analysis())\n",
    "    print('回撤指标:', strat.analyzers.DW.get_analysis())\n",
    "    \n",
    "    return strategy.cash_value #这是累计收益数据，如果需要自己作图可以用这个\n",
    "    #return cerebro"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "id": "b55cd22f",
   "metadata": {},
   "outputs": [],
   "source": [
    "stock_daily=read_hq()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 19,
   "id": "7580ad01",
   "metadata": {},
   "outputs": [],
   "source": [
    "start=datetime(2018,1,2)\n",
    "end=datetime(2023,2,10)\n",
    "stock_list=[\"003002.SZ\",\"003003.SZ\",\"300001.SZ\"]\n",
    "buy_date={\"2020-09-22\":[\"003002.SZ\",\"003003.SZ\"]}\n",
    "sell_date={\"2023-02-02\":[\"003002.SZ\",\"003003.SZ\"]}\n",
    "stock_daily_part=stock_daily[(stock_daily[\"date\"]>=start)&(stock_daily[\"date\"]<=end)].copy()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 20,
   "id": "f873b68f",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "2018-01-02 2023-02-10\n",
      "初始资金: 1000000.00\n",
      "2020-09-23, 买入003002.SZ, 成交量38006，成交价13.02\n",
      "2020-09-23, 买入003003.SZ, 成交量27075，成交价18.28\n",
      "2023-02-03, 卖出003002.SZ, 成交量-38006，成交价20.89\n",
      "2023-02-03, 卖出003003.SZ, 成交量-27075，成交价12.09\n",
      "最终资金: 1127333.06\n",
      "夏普比率: OrderedDict([('sharperatio', 0.13881751787754126)])\n",
      "回撤指标: AutoOrderedDict([('len', 58), ('drawdown', 8.112109741974255), ('moneydown', 99523.99033479998), ('max', AutoOrderedDict([('len', 455), ('drawdown', 47.60672029972452), ('moneydown', 563812.145)]))])\n"
     ]
    }
   ],
   "source": [
    "result=huice_run_num(start,end,buy_date,sell_date,stock_daily_part,stock_list,my_strategy_date_2)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "id": "8e3e3eda",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<Axes: >"
      ]
     },
     "execution_count": 6,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAA9QAAAFrCAYAAAAw18ENAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjcuMCwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy88F64QAAAACXBIWXMAAA9hAAAPYQGoP6dpAAB6pElEQVR4nO3deXwU9f0/8Nfeu7lPAoQEwiGCgigiCJ4Vb1GrtV88W3tatT9tK9+WfrG1tSptLV9r+62KVZHWq5fWo94onoh4IBFBEMINISHZTbL37vz+2J3ZmdnZM7NX8no+HjzM7s7sfjY7Wec97/fn/TEIgiCAiIiIiIiIiDJiLPQAiIiIiIiIiEoRA2oiIiIiIiKiLDCgJiIiIiIiIsoCA2oiIiIiIiKiLDCgJiIiIiIiIsoCA2oiIiIiIiKiLDCgJiIiIiIiIsoCA2oiIiIiIiKiLDCgJiIiIiIiIspCSQXU3d3daGtrQ0dHR0b7LVy4EN///vdzMygiIiIiIiIalsyFHkC6urq6sGDBgoyD6RdffBGrVq3C559/npuBERERERER0bBUMhnqhQsXYuHChRnt4/F4cO2112Lp0qWoqanJzcCIiIiIiIhoWCqZgHr58uW44YYb4u5///33MXv2bFRXV+Oiiy6C0+mUHrv11lvh8XhgNpuxatUqCIKQzyETERERERHREFYyAfX48ePj7uvt7cXZZ5+Nc889Fxs2bIDb7caPfvQjAMDOnTuxbNkyTJw4ETt37sSiRYtw0UUXMagmIiIiIiIiXZTMHGotzz77LCwWC26++WYYDAb84Ac/wJVXXgkAWLFiBZqamvDyyy/DZrPhhhtuwNixY/Hyyy/jjDPOKPDIiYiIiIiIqNSVdEC9Z88eHDx4ELW1tQCAcDiMvr4+eL1e7N69G6eddhpsNhsAoLKyEpMmTcL27dsLOWQiIiIiIiIaIko6oB4zZgyOPfZYPP744wAAQRDgdDphsVjQ0tKCjRs3StuGw2Hs3r0bY8eOLdRwiYiIiIiIaAgpmTnUWs4991zs2LEDa9euhclkwuOPP46zzjoLgiDgq1/9Kp555hn885//xO7du7F48WL4fD7Mmzev0MMmIiIiIiKiIaCkM9Q1NTV4+umncf3116O9vR1HHHEEnn76aZjNZkyePBlPPPEElixZgk2bNmHChAn497//jcrKykIPm4iIiIiIiIYAg8C210REREREREQZK+mSbyIiIiIiIqJCKfqS73A4jL1796KyshIGg6HQwyEiIiIiIqIhThAE9PX1YfTo0TAaE+ehiz6g3rt3L1paWgo9DCIiIiIiIhpmdu3ahTFjxiR8vOgDarGJ2K5du1BVVVXg0RAREREREdFQ53K50NLSkrKpddEH1GKZd1VVFQNqIiIiIiIiyptU047ZlIyIiIiIiIgoCwyoiYiIiIiIiLLAgJqIiIiIiIgoCwyoiYiIiIiIiLLAgJqIiIiIiIgoCwyoiYiIiIiIiLLAgJqIiIiIiIgoCwyoiYiIiIiIiLLAgJqIiIiIiIgoCwyoiYiIiIiIiLLAgJqIiIiIiGgIcHkDuOHxj/D3dbsKPZRhw1zoARAREREREdHgvb2lC//+eC/+/fFe1JVbcdqUpkIPachjhpqIiIiIiGgI8AZD0s8vfrq/gCMZPhhQExERERERDQGBkCD9/H5HTwFHMnwwoCYiIiIiIhoCAqGw9PP2rgFs2u8q4GiGBwbUREREREREQ0AgGFbcvuM/mwo0kuGDATUREREREdEQEAxHSr6njqoCAKzZ1q3IWpP+GFATERERERENAf5o8DxlVBWqHRb4gmGs3X6owKMa2hhQExERERERDQGBYCRDbTUbcXRrDQDg8j+/h163v4CjGtoYUBMREREREQ0BwXAkQ201GXDF7LHS/Zv39xVqSENexgF1d3c32tra0NHRkdb2y5cvx6hRo2CxWHDGGWdg3759mb4kERERERERpSCWfFtMRsyf2oTjx9cDAPa7vIUc1pCWUUDd1dWF8847L+1g+q233sLNN9+Mv/zlL9i+fTu8Xi9uuummbMZJRERERERESYgl32ZTJMwbVW0HAOxzMqDOlYwC6oULF2LhwoVpb79582bcc889mD9/PsaMGYOrr74a69aty3iQRERERERElJy85BsARkYD6v0MqHPGnMnGy5cvx/jx43HjjTemtf03v/lNxe3Nmzdj4sSJSffx+Xzw+XzSbZeLi5ETERERERGlEpCVfAOxgHrFOx1Y/flB/Pv6eaiyWwo2vqEoowz1+PHjs36h7u5u3Hfffbj22muTbnfHHXegurpa+tfS0pL1axIREREREQ0X/mjJt8UcDair7NJj27sG8EL7/oKMayjLW5fva6+9FnPnzsW5556bdLvFixfD6XRK/3bt2pWnERIREREREZUuseTbbIyUfLfUlSket5m5yJPeMir5ztaDDz6IN954Ax9//HHKbW02G2w2W+4HRURERERENISIJd/WaOA8vrFc9biQ9zENdTm/RLF27VrceOONePzxx9HU1JTrlyMiIiIiIhpyQmEBNz/Vjic/2p1wG6nkOzqH2mY2KR53eQK5G+AwpUtA7XK5EAjEfzgHDhzAggUL8OMf/xgzZ85Ef38/+vv79XhJIiIiIiKiYeO5DfvwlzU78IMn1ifcRl3yrebyMqDWmy4B9fTp0/Hcc8/F3f/YY4+hs7MTS5YsQWVlpfSPiIiIKJe8gVChh0BEpKtdh9wpt1GXfAPAny4/RvrZ5QnqP7BhLquAWhAEjBs3Trrd0dGBCy+8MG67G2+8EYIgxP0jIiIiypWH3+nA4Te/gFc2Hij0UIiIdLH684P4ojN1pW9AVfINAOdMG4VFZ04GAPQxQ607tnkjIiKiIeXnT38KAPj+Yx8VeCRERIP39tYufO3BtfjXR3tSbhtIUPJd7YisPc2Sb/0xoCYiIqKcKHRVmjfIsm8iKn1rtx+Ku0/r+3XAF8RHO3sBxNahFlWJATVLvnXHgJqIiIh0t71rALNuewX3rv6iYGPgLDMiGgospvgGY8Fw/Bfcd/6yTvrZalIF1PbIasnMUOuPATURERHp7rbnNqKr34+lz28q9FCIiEqa2RQfsvmD4bj73t7aLf1sUe1TaY9kqPu8zFDrjQE1ERER6S6kkT0hIqLM9Lr9ePHT/XH3awXUcmZVVruu3AoA6O736Tc4AsCAmoiIiHKA8TQR0eBd9eBaaV60nD+UPKBWl3w3VdkAAAP+EDt964wBNREREekunKcJzPudXnztwbV4bXMnAqEwtnb25eV1iYjy4ZPdTs371RnqAZ+ylFtd8l1mNaMyOo/6gMur4wjJXOgBEBEREWVr0T/W480tXVj9+UGcO20Untuwr9BDIiLShdufeL6zTxVQd6lKudUl3wAwssqOPm8/9jt9mDiiUp9BEjPUREREpL9cJKj/uGoLLrn3HXj8seWw1u/qlX7WCqZTzTMkIipWG/e6Ej6m/m472KcMqNUl3wAwstoOANjn9OgwOhIxoCYiIiLd5aLk+86XPsf7HT148qM90n2uFB1rnR7OFSSi0rSnN3Hgq55DrQ6o1SXfANBUFQmo1+/uHfzgSMKAmoiIiHSXyynUoXD6WWc23yGiUtXV70/4mDpDrb54qHVRs7nGAQD465qd2HawX4cREsCAmoiIiHJA7wy1IHs+q9kYd18igRDbjRNRaTo0kHiJK3VA7Q3EpsJMa66WstFyl89ulX7e0e3WYYQEMKAmIiKiHNA7jJU34BFLGXvdqbPPgRRLyxARFavuZBnqUEhx2xv9jrzomGY8ff08mIzxTclGVNlx7NhaAIAvGIp7nLLDgJqIiIh0l072OBP9siVhzNGA2pvGCaG6Ey4RUanIpORbzFDbLSYYDPHBtMhuMQHgd6OeGFATERGR7vSeQy1fYzUYzTqn08GbGWoiKlXJSr7VAbE3ELltN5uSPqctOmVGXiJOg8OAmoiIiHSn9xxqeYZaDKTTCZYZUBNRqeoeyCZDnTy8s0UfZ4ZaPwyoiYiISHd6z6F2y9aeFoPkdE4IGVATUalKPoda+d0mzokWS7oTsUUz2L4Avxv1woCaiIiIdKd3ybc8Q+2TMtSpX8QfZJdvIio9gVBY8b0HAK11ZTjpsEYAWhnqaMl3qgy1WcxQs+RbLwyoiYiISHd6NyWTz6H2ZzCHWp3FISIqBS5P/CoG3z6xDQ0VVgDJm5IlEwuo+d2oFwbUREREpDu988IDGnOo02pKxpNGIipBLm8w7j6LySgFxOrvPzFATtWUTAy42ZRMPwyoiYiISHf6l3zHz6FmUzIiGqq0MtQWkxHW6LKB6uobMUC2pV3yze9GvTCgJiIiIt3p3eVbK0OtPiF0aJQ6MqAmolLk8moE1GYjrAky1FJAnWrZLAubkumNATURERHpLqz3OtR+jZJvVbBcbos/kfSn0biMiKjYOKMZ6oYKm3Sf1WSAxaSdYWZTssJhQE1ERES607spmTwbIwbJ6vnRDqtGQM2yRiIqQS5P5CJiY2UsoLaYjDBHA2p1FZA37WWzWPKtNwbURERElFNhHdLV8tLthBlqqznpfkREpUIs+Ra7egOA2WSE2WgAAARV36s+KUOd3jrUWzr78e+P9+jy/Tzcxf+fh4iIiGiQ5NmTkCDACMOgni8gW0/6nx/uxjnTRsZln8XMCwBMa67Ghj1OBtREVJLEpmTyDLUBgCkaUIdU01liy2alKPmOPr61sx83PP4xLCYjzpk2Sq9hx3np0/1Y+e4OOD0Bxf8Xfnj6YThtSlPOXjefGFATERGR7uRJj1BYQIqkSUrqwPibD6/DknOnKO4zGg249YIj0OMOwOUJYMMeJ9ehJqKSJM6hbpTNoQ4LgmaG+m/rdqF7wA8g9bJZ6qZl63f15jSgvvOlzfj8QH/c/b3u+KZrpYoBNREREelOPodaj47fWoGxeg6g0WDAlcePAwD85oVNAJSZbSKiUiGuQy1vSiZAlqEOx77//vsfn0g/pyz5VmWwq8ss+MuaHQiHBXxt7ri0x/fRzh6YjUZMG1OddLt9Ti8AYOlF0zCqxiHdP7mpMu3XKnYMqImIiEh38hhaPdcvG1ql2+qSb3lRuUVaq5WdbImo9HT1+QAoS74hIOEcalG6Xb5Fe3o8eOS9zQCAC2aMRk2ZVWs3hQFfEF/+0zsAgE23npUwiPcGQuiLXhg4e9ooVDssKZ+7FLEpGREREelOfqqnT1Oy+OdQB9lGQyykFtdqHWoZ6v97bStuefpT3buoE1Fx6eyLZHZHVMoz1AJM0YuFoYQBdWYl3wdcXunndDt/H4wG+wDwxcH4cm5Rp8sXfU0jquxDN4/LgJqIiIh0p2hKlqcMtTxFbY2edJZ6U7JlL3+O+9/YBiByYeK3L27Ginc6sKUz8UksEZW+zmjQOqLKhpMOa0RTlQ3Hj2/QzFCLweqxY2vTXjZL/Trq50xGnK8NAFs05kfHntsrvQeDYXCNKYvZ0L1UQERERAUTDCm7fA+W1nrS6nnVFpMh7udSbkq2z+nB3a9uAQB8fd44RfZI7OhLREOPvFS6sdKOh6+ehVBYgNlklM2hjnyvCoIAtz/yffDHy47J+LX2O2UZ6jS/V7r7Y0H4hzt7cOHRzZrbSRcFKu0Zj6uUMENNREREupNnpXOVoRbvq7KbUVtmwS0LjpAes0SzMFqBeKmQ/95cngD6oyfY6seIaGhRl0obDAaYo1U36gy1LxiWfq5Io6x6bH2Z8rVkGep0L0AekmWoV767Ax/v6o3bJhQWcOMTHwMAmqpscY8PJQyoiYiISHdBWQdafQJq5XNYTUYpY3vtqRPx4c2nY5Ksa6xlCJR8yxP7Tk8A/b5YQD3gY4aaaKhKViqt7vItZrINBqAsjfUJK+0WrP3paXjiO3PiHvMF0vu+lJd8A8B727rjtlmzrVu6oDlpxNDp6K2FJd9ERESkO3kAHNYhplUHxiFBkE7WrCZj3EmnOIf6tc0H8cXBfkxorBj8IPJMni1yegKKpmsD/qDWLkQ0BCQrlTYbI99t4rSageiFtgqrGUZjevOUR1TZoXWdM92mZF2ykm8gtjSW3JpokD2i0obvnTIhrectVRlnqLu7u9HW1oaOjo6099m6dSvq6uoyfSkiIiIqUUFZMKjLHGp1QB0WpBNJqzn+dEZ+3/88uWHQr18I8nno8RlqBtREQ5UnOie63Baf+zSpSr7F74V0yr3l6iusUMffvmAI3kAIH+w4lLSySCz5HhctH9/T64nb5r1thwAAPzrjsJSN0kpdRgF1V1cXzjvvvIyC6e3bt+Pcc89FT09PpmMjIiKiEhVUzKEeXIpaEASpFPEPlx4t3d/jDgCIZaPlLLL75HMES0lAlaFmQE00PIhTZiwaGWf1HGoxuK3QCL6TsZiMGFmlzID7AmH84ImPcfE97+Ke17cm3Le7P/KaRzZXAwD2agTUOw+5AQCHj6zKaFylKKOAeuHChVi4cGFGL3DuuefiW9/6Vkb7EBERUWlTBtSDe67rH/tIyoCMqy+Xln1xeqIBtUaGWt6MbHJTac7fk2fl1U3JBvycQ000VIlTZsym+IDaZIrNoe50eXHVg2sBAGUZBtQAMLrGobjtC4bxfPt+AMDy6HJ9WsQ53jNaagBoB9TitJRMM+elKKOAevny5bjhhhsyeoFnn30Wl1xySdrb+3w+uFwuxT8iIiIqHYIg6Nrl+7lP9kk/W8wGqQxSXO5FK6CWT6muslvQ6/bHbVPs1CXf8nnTzFATDV3ilBlxvrSclKEOCfj1C5ul+9v3ODN+neZadUAdu1CX7Fv7QLQL+dGtNQAi1UIe2UU+QYhNyck0c16KMgqox48fn/ELZLrPHXfcgerqaulfS0tLxq9JREREhRNUBdDhQcyhDquey2IyoswamY/nCYRgMABHjq6O2+/0qU3Sz0+s24UZv3wZf34zccalGKlLvvtkGWr5z0Q0tIjfoZoZatk61Bv3xRKPIyozX5qqWSNDLUnwte0NhKTqoAmNFdI87D5vQPE84le3+H09lBXdslmLFy+G0+mU/u3atavQQyIiIqIMBFVLXKkD7HQdcHlx7G2vKO6zmowot8YyHqcd3oRW1bqqQCTw/uUFRyju+9Vzn2U1jkJRd/mWZ6VXvNOhuVQNEZU+KaDWzFBH7guFBXiiVSujqu2K/hLpGqUOqAOxLHOiC6EHoz0prGYjqh0WOCyxC5wieb+HMisz1Hlns9lQVVWl+EdERESlQ93VO9uS7/vf2CY13BFZTEaMa4gF0HPGJ15FxKZRCl5K4kq+VWXev3lxs3oXIhoCYiXfiTPUwbAgBbH3X3Usjh2X+YpK9eVWxW15hjrRt7Y4f7opuka2wxofULt9kZ8dFpM03qGstP9PQ0REREUnFNKn5Fu99jQAWEwGRYl3sg6yWnOrS4n8/W/e34dP9yr7ytSWWfI9JCLKg2RNycyykm93dN6yI8uy6hqH8jtEHhQn+toW50+La2SLS2LJ51CLGWqtZb+GIl3epcvlgsPhgMXCL3YiIqLhLhiOXzM6G1q7WcxGTGqqkG4fPipxB2+bubTn7skD6o5uNzq63YrHG7OYM0lExU/8zrRoLAkYy1CH4Y0GwNnOU64pU2ao73pli/SzkCBHLZZ8N1bYFK8tD8bFVRnKbaX9HZwuXS7dTp8+Hc8995weT0VEREQlTh1AqxuLpf08GikSq8mI4yc0oKHCiuljqtFQkTio1FqfupQEQsl/b/0+Lp1FNBQFwolLvsWstTcQlr4jxHnMmapJUuWS6GtbbEhWW25RvLYY3O9zevDtlesAQNHvYijL6l0Kqv/BdXR0JN1+3LhxcfsQERHR0KRuQpZtUzKtQNxiMsJuMWHVTadonmzK2SylHlBrL+B96XGteGztTvTLuuoS0dAh9k8wJSn5ljf+smcZUNeqMtQKCb62XdGAuspuUby2xx/5vvrPhv3StsMlQz08LhsQERFR3qgz1FqZ5myeB4iVO4onc8mUeoY6mCCgHt9QDgAYYIaaaEgS//YtGl2+TbIu3wBgNGTfgDHZ3OtEJd/ikn2VdrPiOcSS73LZc/pTVNkMFaX9fxoiIiIqOrqVfGe5n8iWZdamWCQ6GR0XDaj7fFyLmhLb5/Tg8bU7pVJcKh3J1qFWV+Y4LCYYDPp30k709euKVsZUOZQl355ACO17nPjJvzZI2x4a8Ok+rmLEgJqIiIh0pS7xFgPjTAPrAf/gAsZSz1AnKvmuiy51o15Gi0juf1/+HD/51wZc/uf3Cj0UypBY8p1s2SxRth2+U0k0XVcKqO2qOdT+EP7rvncV2x7qVy57OFSV9v9piIiIqOjElXyHBXT3+3Dc7a/ilqc/Tes5/rpmB1789MCgxlHqc6gTlXyLpZb9DKgpidc3HwQAfLCjB04359uXEqkpmcZFwbgMdY4C6rCgfVFPXfJtl5V8D/iV1RDq20NVaf+fhoiIiIpO3LJZgoBH3tuJrn4fVrzTkdZzLHmqfdDjyHZeYbFIVPItru3a72VATYlNGRVbo71/kNUelF/iRcm0MtSDnNpy96VHJ3zMrREQS03JNEq+1X6/cMagxlYqSvv/NERERFR0tDLUWg25n/1kLz7YcShn47CqAuoUTcGLjlaG+qnr5qEiGlD7Q2H4gsMjA0SZk1/YSlTtQMVJLPnWWofarGpUNtiA+vyjRmPb7efgoatnodKm7Fft0Qqooxfy1CXffapVB3598TRcMKN5UGMrFQyoiYiISFfqOdRhQZA604r2OT24/tGP8J2VH6S9tOaoantG47CZlSea6sxOsVOXWx47thYzWmoUXXTZ6ZsSCQRjf1ep1jSn4iL+7Wt9Z6mX0tKj5NtoNODUySMwqalCcb96WokgCFKGWt3lu6PLrdi2ocI26HGVCgbUREREpCt187FgSFCULgqCAGf0pKx7wI/dPZ6452ioiF8f9ZUfnpzRONQl31mu3lUw6iBIbORrNhmlrJBW2ffObjc6Xd6cj4+Km192QUY9DYOKm3hR0pJml2+9iA0PRd39sS7dm/f3YVvXgDQ2dcn31s5+5ThLvClkJrgONREREelKO0MdOwn0BsKK7Nmm/X1oqStT7KPOzNjMRmnucLrUXb6DYQHhsABjiWSq1Rlq+dI4DqsJnkAIXlXJd78viJN++xoAYNvt55TMeyX9KUu+S+xq0jAnLZuluQ618m+6zKpfOHfK5BF45bNO6XZXtEv3wT4fzrzrDel+oyG23rSYod4vu4h35hFNmDehXrdxFbvhc+mAiIiI8iJ+DrVyPVW3Pyh1sQWAz/a54p6jz6suNcx8HFrBpL+E5pKqA2r52xGz776AcpuDfbGM0p7e+Mw/DR/Kku/SOe4pNuddax1qk2rNaT1XM7jsuFbc9uUjMWlEpPS7K5qh3tLZp9iuqcouXeBTZ8hPndyI+648dlhlqIfPOyUiIqK8iF+HOqwoX3b7QwgEYyf4m/a7VNsLcd1lBeiTYVMHoMVMnVUcW1cu/SwG1C5vAJfdvwbLXv4cgHLt2M37lSfBNLzIL1qp/yapuMXWoY4P1YxGg+Limp4l30ajAZfPHos54yPZZTGgVi+7NrrGIf2sLhMXS8GHE5Z8ExERka5CqvmagZAAvyyAdvtDihP8z/YpAz/5vGCLyYBASMBU2RJAgxHpil0aJ3xiNv20w0fAYTXhJ2cfLj0mNly7/M/vAQDe+aIb3z1pvOLCxeYDfZg/tSmPI6ZiIs9KM0NdWmLrUGtP2TAbjdL3g7r5oh7EhmJ/WLUVm/b34fjxyvJteUB9VEsNDIZYFZHYrGw4YYaaiIiIdKXOrKqXdxrwBxWl1x3dA3DL1snt80WyITazEc98/wRcMnMM/u/yY3QZmy9YOoGFGASdevgI/PGyY1ArywRplXmu2datCJxe39yZdgd1Gnrkf4ecQ11aQkmakgHKedR6lnyLGipj3zUvbzyAh9/tUDw+WrbiQrXDgsNHxi54istpDScMqImIiEhXYVUQ5w+GlRlqX0hxgi8IyvJkcamWSrsZh4+swm8vOQpjapVNy9L16Ldm4xfnH4GqaNaklAJq8Xekbq4GxHcwB4D3th9SvL/3O3rw7rbu3A2Qipr84oq6rwEVN7HSRL3coEje6Vvru2Cw1Ete7ehWLomlPpqmN1dLP1cyoCYiIiIaHPV8zbiA2h+MK0HdJAuoxYZkFRl29dYyd2IDvjZ3HOzReYa+YOms2+xP0phIq8yzq98X93vtdPnitqPhQV7+z5Lv0iI2JbMk6NIvX4s6FyXftWXxyxbKHT6yUnFbXgJe5Rh+Jd/D7x0TERFRTqmzYf5QWFHi7faHoGpUq+j0Lc6hrtBxLp5V7IpdQhlqMQiypJmhdroDcYETA6nhKxBiU7JSJS2blaBTdq4z1OU27SD9e6dMQH25FRfMaFbcP6omVgI+HDPUDKiJiIhIV3FzqOMy1CEpwBVtkjUmG4jOp9ZzfdWy6Fqpbl/pZKjFDKPWPEqteZNOT3xAzUBq+GJTstIVTNGULNdzqBNVB518WKPUAVxudLUsQ82mZERERESDo85Q+4JhRWbY7Q9KJY3N0VJB+dJZAal7rX6nKWJJ4u4ed4oti4d4EUJ98QHQLvPs9QTgDyp/9wyohydBEBQl32xKVlpiy2Yl7vItykXJd6KLmeq51aLhnqFmQE1ERES6SjWHesAXkoLmMbWRQNflDUqBeCAoZmb1O01prYs0NdtxqPQCaq0TZq2LDb0aJd9BZiaHJfXfYDDM46CUBJKsQw2oMtQ5KPlOlKFuqNCeWy3PUA9HDKiJiIhIVyF1l++QMkPtDYakE8ZqRyybIS6d5ZfmDmtnZ7IhBtQ7SymgDiXLUGuVfPsVFy4AZiaHK/XnHuBxUFLECyCJvgNzPYfarlFGbjYaEi6J5bCacPjIStSVWzF1VJXmNkPZ8CtyJyIiopwKqRtjBZVNyfzBsJRJrbCZYTQAYQHw+EOotFuSNuPK1tj6cgDAzu4SCqjFkm+tpmSW+Kx1ICTA5Q0o7mPJ9/DkZ6VCSQtJy2ZpB9QOa+zvX+u7YLAM6q6RAOwWE4wJxgMAz3z/BARCYcXYhgtmqImIiEhXcSXfoTB8gVgzMH8wLG1jMRml+XoD/sg2gSSZ2Wy11JXeHGpf0jnU2r+bg33KZbIYSA1P6s+dF1ZKSyCc/KJipazxVy4y1Fr6fcGkj8u/y4cbBtRERESkK3EutJhd8asy1L5gSMq+mk2GWAfuaMm3WJ6qlZnNlriuqssbhCCURnDhj66ZrRVQJ/rdxAXUDKSGJXWJN0u+S4vUlCxBybe88Ve+AmpKjJ8AERER6UoM4sqipYjqpmSRDHUsAyMG1J5ohlrcVs+SbzGjEwoLcPtLY+ksaQ61xu/BkuAk+kBcQM0M9XDE5nTFRRAEON2B1BtGt5XWoU7QlKzSJs9QD78S62LDgJqIiIh0FY6eDNqjgbIvpAqoQ2HFGsuOaJmgW1XyrWdA7bCYpIx5nzd56WIxEARBKvnWykAlSrLv7fUobrMp2fCkDqgDrFQoqHtWf4GjfvkSXvx0f8pt5csOJlo2S1HynYN1qLV8+8S2vLxOKWJATURERLqSMtRWWYY6QVMyeYZa6vItZqjN+nX5NhgM0klonze9TFEhBcOCFDRrlXyHE0TU6jniLPkentQl3sxQF9ZvXtgMAPjuXz5Iua38b7ZYSr7/cc3xWHTm4Tl/nVLFgJqIiIh0JWZYHFLJdwi+gHwOdSygNisCalVTMh0z1EAsq+MqgQy1PKOvVdKpngdeFX1v3gBLfUmj5JsXVkqGfInBRI0Zy/Nc8n3suDpdm0QONfzNEBERka7iMtSh+Ax1UGo8ZogLqP2hWAdwPVXaIlmdUshQ+1OcVKvjo7aGcs3nYanv8BRX8s0LKwU1qtou/ZyqKaLibz/Bd6B8nehcl3yXDcNlsDLFgJqIiIh0FYo2whKXUPEGwoogVh5gm2VLrXhyuGwWAFnJdwlkqKO/A5PRoLkWrbzke/6UEfj6vHGKx8V9QpxDPSypM9KcS19YrXVl0s/7Xd6k28qbEWqtBw0ovxtzVfK94upZaGsox8PfOC4nzz+UDM/FwoiIiChnxJN5RzSzoV7KSZ6htpiM0na5bEoGxOYdlkRAHUxe9i4v8/zz12bhvW3disfLLCb0+YLSerY0vASC6pJvHgfFotPlw6hqR8LH/UnWnxfJvxf0nhojOmXyCJwyeUROnnuoYUBNREREugqr5lCrKZuSGVAetw61GEzq15QMiM0zLoWSb1+Kk+or5rTi+fZ9OPOIkQCAMbIMGBC5mNHnCzIzOUz540q+eRwUkrxioKvfl2TLNANq2WOJstiUPwyoiYiISFfqOdQiq8kIfygcbUomz1Arl83yB3M0hzpFyfd+pxdufxDjGyt0fd1spDqprrRb8PT1J0i3m2scaGsox/auAQCx6oAQ51APS+oLKWxOV1jyOexpB9RJvv/qy236DIx0wTnUREREpKuQquRbJDbOSrxsVm5LviuSZKi7+n2Yc8erOPfut+B0Fz6D7QtGfheZlHOeKivPFKsD2IxqeOI61MVF3misq9+ffNtQ9G8/SYZ63sR6XDGnFb84/wh9BkiDwoCaiIiIdJUoQz2uIVKW7A+FpTmdFpMBdeVWAMCne50QBEG2DrW+pykttZHXX7W5My7gWP7GNgCAJxDCXqdH19fNhvg7yKTh0LQxVdLP4u+eyyUNT+oAmhnqwpL/Hap7Sqilmu4BRMq8f3XhNHxt7jhdxkeDw4CaiIiIdBWSAmrlzLKGikiZoj8YRkBW1n3G1CbYLUZs2t+Hj3b15mwO9QUzmlFfbsWuQx6s3X5I8di2gwPSzy5P4TPU/iw6nY+tjy2dJf7uGVAPT3FNyTiHuqD0Lvmm4sJPioiIiHQlBnHq7KpYcu0PhqXu02ajATVlVsxuqwcAbO3sz9myWQ6rCROi86PVQbPTEyvDdGXZBVwQBHSmWBInXdlkqNtkAbXYp4iZyeFJ3dWbJd+FJb/A0Z2q5DuNDDUVl4w/qe7ubrS1taGjoyOt7VevXo0pU6agoaEBy5Yty/TliIiIqMSIXb4tJqMiy1IRzZr6Q+G4su6assiSVi5PAP5QbpqSAYDNEnlOnyqD55QF2NlmqP+4aiuOu/1V/OvD3dkPMCqbk2rxdwjEykqZmRye/GxKVlTkFzR63KnmUDOgLjUZdfnu6urCggUL0g6mDx48iPPPPx8/+tGPcOmll2LhwoU4+uijceqpp2Yz1qIlCAIE/v+KiIgIQOyE0GQ0wGo2SrfFDDUAeKINyCzGyEljVXSNaJc3mLOmZEAs4ys2/RL1yhqRObMMqH/38ucAgP95sh0XHTNG8VifN4Ctnf2Y0VKT1jI32ZxUy5/3yOZqbNrfx/WHhykxI2oyGhAKCyz9LzB5ybc3EEqyZXbVKVRYGQXUCxcuxMKFC7FmzZq0tn/kkUcwatQo3HzzzTAYDPjZz36GBx54IGlA7fP54PPF5ha4XK5MhlgQnx/ox5l3vVHoYRARERUVs9EAi2wedLktdtrR74uUVYuPVzkij7k8gRwH1JFmXeoMda88Qz3Idapb6hxx911y77vYtL8P91x+DM6eNirlc/iynEe5etEp+GS3E2VWE/7xwW4GUsOUeCHFYTGh3xdkt/cCk5d8i6sZJMKAuvRk9EktX74cN9xwQ9rbr1+/Hl/60pekK6bHHXccPvzww6T73HHHHaiurpb+tbS0ZDJEIiIiKhIhQVBkWCtkAbWYERaD7FiGOiCdfOaiKY+UoQ4oM0byZW1cnsznUMv3b60ri3t80/4+AMBTH+/J6PkyLfscW1+OBUeNli5GBFjyPSyJn7u49rr8eKf8k5d8e1JlqFnyXXIyylCPHz8+oyd3uVyYOnWqdLuqqgp79iT/H8nixYvxwx/+UPEcxR5UT2gsx0c3n17oYRARERWF5W9uw9Mf78UJExtw7+ovpPttZiMsJgMCIUE6aRSXd6pyiHOog7E51GZ9u3wD8jnUsZPaXtW609lkqHd0x7qE15RZE25nMiZ/T5/s7sWiv38irZVtNZuSbp+IOfo6IZZ8D0tiRrrKbsE+pzdlmTHlViYl3+LFD3b5Lh0ZBdQZP7nZDJvNJt222+1wu91J97HZbIp9SoHZZERteeL/eRIREQ0nPz7rcPz4rMMBKE8KxSZlgVDshFLMUIuZNJc3PyXfn+3vw8PvdODCGc3o9SibBGUzh1q+tqw/mDiINRmTv6fH1u7C5gN90u0ZLTUZjwWInJsAbEo2XEkBdXQqRaoyY8qdUFjZaykQEhAIhRN+vzFDXXpyGlDX1dXh4MGD0u2+vj5YrQw8iYiIhgt5htViMmJAdWIvZajtsi7feSj5fu6TfXjuk324/T+f4YIZoxXbZNPlWz5XOWlAnSLpLs9eXTJzDL4+d1zGYwEAc/SFOId6+BAEAX2+IKrsFulCSmX07ypVmTHljtb8dU8gJAXU63f14qOdPbhizliYTcZY/wQG1CUjpwH1rFmz8Nhjj0m3P/74YzQ3N+fyJYmIiKiIyE8KtU4Qy6JLaYkl332yLt+5OKFUN/rxBcP42zrlMld9WaxDLe+m7VedQMtPqI0pSr67ByLZ8tu/PA2XzW7NeBwiseSbyyUNH99/7CM8+8k+PPv9E6RjsCpa+eFhhrpg1N8HAOD1h6SLiDc8/hE6ut3o6HbjlvOPkF1QzG66B+WfLv+ncrlcCATir+aef/75eOutt/Daa68hGAzizjvvxJlnnqnHSxIREVEJsMmyzFaTET9fEOutYjUbpTnF4ol/j9svZVVzsw514pPUrx0/FoB2RikVeWm1eELsDYTw3Cf7sLfXIz1mMhgQDIUTvoZYOt5cG98pPBPmaGl5gBnqYePZT/YBAO5/c5t0fFVHL1T5Q2FeXCkQ+XeDI/r9I68Y6OiOTIdd8U4HgOwbElLh6PJJTZ8+Hc8991zc/Q0NDfjd736HM888E6NGjUJ7ezuWLFmix0sSERFRCZCfFFrMBkXWVZBNLBQz1OJcT7PRIAUDekq0FE1rXRkWHBUp/c4moA7JAlex4dldr2zBdY9+iCsfWCt7LIwv/+kdnL5stebriAF1Q8XgpsiJy5GFGFAPO2EhFsRVyf6GvEmmIlDuiH/nJqMB5bZIQC2f014pW/3AFwzBH+0xwYC6dGRV8i3/HyAAdHR0JNz22muvxRlnnIHPPvsMJ598MqqqqrJ5SSIiIipBipJvk1FqCgYol3SSL6kFAE1V9pQdsbORKEPdVGUb1FJTWnOoH1u7EwCw81CsIeuhAT827HECAL442I/DR8bOi0JhAYcGIgF1Y+XgGrSKvzuuPzz8hIVYF/1ymxkGAyAIgNsfjPs7o9wTvw8sJgMc1vgMtc1iQp8vMs2kZyDAdahLUF7+qiZOnIiJEyfm46WIiIioiKi7fCeiPnkcWW3PyXgSnaQ2Vdml8WnNeUxFPofal+SEuKs/1g18wKec13powI+wABgNQH354AJqC7t8D1vhsCB97haTEQ6LCW5/CB909ODsaaMKPLrh5bN9Lvzxta0AAIvRKJV8e2UZavnSdocG/Dltyki5wU+KiIiIciZVUzKRwWCQTjaB/AfUI6vssJqzz+oq5lBH9xfXvJaTL691aEC5XJcYbNeVWwednTez5HvYem/7ITy9fi8AwGoySJ30v/fIh9jn9CTblXR23h/ewnPRue0Wcyyglpd8y1cFODTgT/r9QcWJnxQRERHljFm2TlSqjIt44g8Ao3MWUCcq+Y5lqANZzDUNaZR8a2Xku2VBdLcsWw0APdHHassGv8SoVPIdzq7k+4n3d+Kmv6/HJ7t7Bz0Wyi/5hRqzyQijIfY3uOsQA+p8kn8vJCr5llfEdA/4mKEuQZxIQURERDljQOxk3pJiTqBdlqFuqspRQJ0g6zOqxq7bHGqx5NvtS75UUZcqoD7k1i+gtkS7fAtC5KQ+k4y3xx/Cj/+5AQCwp8eDx74zZ9DjocKwmIwY8MWWgSuzmvDUR3swobEC08ZUF3Bkw49ZVvItBtThsKD4volkqHO3ygHlBj8pIiIiyhlZckzqPJ2IQ5ahbqgY3BziRBKVfLfUlinmUKsbsKaizlALgoDuAV+SPYCufmXJd487sgRpTdngu5vLKwPSKWEXBAFbDvQhGApLgT0AHOjzDnosVDgWkwEDsvLitdsP4cYnPsaCP75VwFEND+rpFlazMZahjn4m6gqSQwN+qUIm1QVIKh78pIiIiCgvUpUwyudQ56obcaKS75a6MsX4ghnOPZYHrf5gGC5vMGWmu1s1h7o3eruuXIcMdYbv5e/rduP0/30Dd770uVR6DgAHXckvClBxU2c5t3X1Sz9zfn1uqS+oWUwGOCyR7zUxQ+1XTS/pHvBL3yXWFBcgqXgwoCYiIqKckZ8SGqLp6ke/NRujqu148OvHKrZVBNT2XAXU2qc+tWUWWMyx0WbaHVuRoQ6F48q5tajnUIuZ4Ro9Sr5lgZT6pF3Lf//zEwDAvau/wJUPvCfd3+cLStk0Kj3qgNpqiv2NdbL6IKfkDQiByPrgDmvk8xD/ptR/mwO+IALR7xKzkWFaqeAnRURERDlj0EiyzJ3YgHcXn4YvHd6kuF9e8p2rDLU9wRxqg8GgDEIz7PQtzwKHwgK+6OxPsnWEWxWo9kZLvmt1KPk2GQ1Zr0Utlp6L1IEBFZ9EUxTMqixnvy/22e5zMqDOpU7V383Wzv64OdTq75lgSGDJdwniJ0VERERFQZ6hrrIPPqjUolXyPXVUFQDAbMxs3rGcunx28/6+uG2unDNWcVudnerRsSkZECuxT5Wh7nX7kz7OTGbxSzS9wGoyokpW7eH0yALqXn6uudTdH/935bBGS77FOdRB5efmD4WlNe0tg1w6j/KHXb6JiIgoZwxI/6RQnpHJVcl3tSz721zjwJ2XHIWpoyMBtcFggNVkhD8UzjigDqq233wgPqAe11CuuO0LKjPU0rJZOsyhBiJzNj2B1BcH1HO51ZihLn7BBMujWUxG/O2a43HWXW8CAFyeWMdvrkmdW2J39XkT6zGi0o7zpo/C5wcilSuxDLXyOyAQCksXR5ihLh38pIiIiKgohGVZ3lyVfMsz33t6PTh+Qj2qHbH7xE7k6sxRKurGX2KGWl6+Lc/AA7HltUS9Hv26fAORrsJA6mXAfIHkAfeuHrcu46HcSXS8mk0GHD6yCvMm1gMAXF6WfOeLOKVjZJUD//tfM3DalCY4LMo51OrvgIDsYh6XzSod/KSIiIgoZ7TmUCciz7JZc5idufeKYwAAPzr9sLjHzLKlszKhLvne1jUAAJg8slK6Tz1/W12K3eeNZLT0Kne3pFny7Q0mbzr24Y5eXcZDuaNefkkklv2Lx4I8oGblQW6JWegyWW+IMmvyLt+BoCAF1GaWfJcMlnwTERFRzmQSUOdrGZ+zjhyFj24+XZGZFomBR6oy6W0H+yEAmNBYASA+Qy2+lzG1ZQAOAUidoe6PBtR6lbtb0rw4IM9QW0wGKaN9dGsNPtrZi3U7DkEQBKlLOxWfRMer2JRMPBacsoZz6XSip+x5/JG/Z3lAbZetQ+3xh/DlP72j2CcQDksrDOTyoiLpi58UERERFYVM134ejNpyK4waGSBx7ddkAXUgFMaXfrcap/1utTRPUj2HWjS6xiH9bLeacN+VM9EcvU+enfIFQ1Lgq1e5e6zkO0VAHc1QHzG6Ch/97Aw88q3ZuOjoZtx3xUzYzEZ09fvxyW6nLmOi3EhU8i0G0lYpQx2bQ80MdW6JJd/y1QvkXb5f29wZt08gFJa+B5ihLh0MqImIiChnFhw1GgDQpmrIpSVfGepkLGkEofLlrnYeiswv1roYYDQAI6vs0m2HxYQzjxiJJ6+dC0DZlKxfFujoFVCnm233RjPUdosJFTYz5k1swLL/moERVXacfeRIAMBja3fqMibKjUQl3xajWPIdH5wxQ51b4jxpZcl3LEOtFS8HgoKUoeYc6tLBT4qIiIhyZu6EBrx440l49vsnpNw2nGAt3XyKzTtOPBZ5Zllca1brYkC1w4JyW3x2Sly6KyzEMtv9vlh5qEmnzFQ62XYgFtjbNEpMxQsiH+3s1WVMlBuJPmOLWVnyLdfjDmTczZ5S8wVDCIbCsgx17AKZXZah1vpM2JSsNPGTIiIiopyaPLIS5WlkXZecOxXlVhMWnTk5D6PSlk5WV55Z3tcbWXpIK0NdW26VmhABsdJP+dzIc+9+Cw+8tV1qSFap43Jh6TYlE+dyawXUYsk6s5nFLZigk7t4DCRagklrrWTKnjcQwqxfvYJz734L7mjjMXnvBHnJt9bfZWQdajFDzZLvUsGAmoiIiIrClFFVWP/zM3DdqRMLNoZ0srryE+G90YBaK0NdV2ZVnEzbzfEB9eYDfbj12Y1ShlrP5cJiTclSLJsVjJV8q42otAEADrn9zGYWoXBYwKd7nVLX6ESsCbKdvFCir437XHB5g9h8oA9uX3xTMnnJt3zqiMgju8/MDHXJYJdvIiIiKhqFPolML0Mde2x3NKDW2r623AqHNfZ+7NGfTUYDzEaDIqsd6/Ctz5JZgGw+eKoMdSBxyXdtmRUmowGhsIDufj9GVtvjtqHCue+Nbfj1C5swcUSF5uPiEmyJsp0HGVDrSj5rxRldV17RlCz6c78viB/9fX3c/gP+WC+FRBdBqPjwkyIiIiKKSierKw+oO12J51DXlVlhlC01Jc9Wq4NXMUNdqWOG2ppmU7JYyXd8htpoNKChwgoAmLv0VUW5OxXe71/9HACwtbNfum9EpQ1rFp+GD5bMl6oh1PNxxWODnb71Fvse6IkuUVYmr1LRqAKR88qWsDOz5LtkMKAmIiIiikonq+uTldeKpbZitlneUKy23KrYT34yrV5j1uWNnHzrWfJtNafZlEzMUFu0TwvFEvewAGze36fb+Gjw1MfL+MZyrLrpFIystqO+wibdrw6oW+o4Nz4XAiF5QB2Zny7voyAv/06Fy2aVDgbURERERFFpzaGWPSZmbMUMdZWsqVhduQWjqmPrUMuDGnU2+IDLCwCoyEFTMl+Kkm9vkjnUQCzTBijneFLhqZv9Vdktmhdl1CXfY+sjy9h19bEpmZ68sott4neCvOTbYjKmFShbTAYYDAyoSwUDaiIiIqKotOZQy8oyxZ/F7ascsTnQNWVWjKy24+FvHId/RdeeFqkz1Puc0YA6B03JAqmakiWZQw0AV84ZK/3skq2XTYWnPl4SzbtVZ6jHR9eF5xzqzDjdgaRl8vKSbZE6K+3QuHA1a1yt4jaXzCot/LSIiIiIojKdQy3+HMtQxwLqurJIyffJhzXimFblCbM6eN3TE2luVu3QsSlZgosDobCgyKQlWzYLAH589uHSzy5PQHMbKgx1QJ1o3q06QGtrFDPUDKgzcdQvX8Ks216Reh6oeTW6rasD6roK5VSQ6WOqcfelRyvuY7l3aWFATURERBSV6TrUOw+5sX5XrzSHusoRC3DUc6jl1BnqXYfcAIC6JPtkSgyQxfeys9uNT/c68fWH1uL4O15Fb3SOZ7Jls4BI0Hbu9FEAYnO9qTioS74TZTbl61AbDcDYumhAzQx12oKy74SOrgHNbbQCaocqoG6LVgeILpjRjNoy5d+9+vuBihuXzSIiIiKKkhp5JZl37Fc9dsH/vY3WujIAqgx1kuBYnQ3eGy35rinTM0MdeS/+UBiCIOCk376mePyF9v1YeFyrFAQkylADsffVx5LvohJUdZdPFFBbZZnrCpsZjdH1xRlQp09emSJObw6HBdz+n89wRHMVvnz0mLiA+vCRlXH9EsS13UVlVlPc58aS79LCgJqIiIgoSgwcD7kTN2vSavK1M5phlmd568qSBdTa2WA9M9RStj0oaM597h7w44X2/fhgR0/SMQGxzDtLvouLTxXAJVpvWh6gVdot0ufZ7wtCEAQ2wEqDVvb5o109+PNb2wEAJ05qhEc1h3rexIa4fVpqyxS3LSYjTEYDjIZIJ32AS2aVGgbURERERFEjq+0AYl23tSRbi1m+HnVlko7diUo61aWfgxGbDx7CPqcn7vEX2vdjwx6ndDvRsllA7EIDS76Li/riTsKSb0VAbZZKxQMhAb5gOOX6yBTrhg/EGv25PLELVSvf6YirGDi6tSbuea46fhz++eFudHRHLsKFwpHntZiM0ufJDHVp4adFREREFDWyKhJQ73cmCag1OvmK7LKg1JiksVCioDzZvOtMWc2xDPW+3vj3Iw+mgVQZ6mhA7Qliv9OLn/+7Ha9t6tRtrJQdddY07YBatjbyQIIGW6QkrwYQp304ZRUbd6/aij+9/oViH62Kk+oyC15fdGrsuaLBufwzshgZopUSflpEREREUWKGOllA7U/SsOzc6aMxu60ON5w2KenrJJqLnKxMPFNWWYO1vRoZarXkGepoybc3gF+/sAkPv7sDV694H5/tc+kzWMqKej6/w5pgDrU5dnGn0m6ByWhAebRZVqKO1aQkXxJLvCDmTDEFosaR+u9ZXEZLXq5vMbPku5Sw5JuIiIgoSgyoO/t8CIcFzSyz1hxqUbnVhCe+e3zK17nhtEn4/atb0FBhw+rPDwKINAVTdwQeDPEE/V8f7UF9RfIT+/pyK6aOqkr4uJih3u/04qOdvdL92w4OYEqS/Si31Mei1hrHQHyGGoh0CB/wh9hoLk1eWVWJWKWSMqBO0mTwlgVT8fYX3VhwVKSDvvwzMjNDXVL4aRERERFFNVbYYDREuid3DcR3QBYEIa4RlJwpzfVjzzhiJJ77fyfi9KlN0n16zp8GoGg0df+b2xWPnRddBgsATjt8BNb89DQ0RcvdtYhj29Y1AI/s/Seba065py75TjQXWl56LC6jVhENrFnynR6ttdtTBdTJ1pX/+rw23H/VsdJUC3lAbeUc6pLCT4uIiIgoymwyoq48uqRQn7LTty8YwkX3vIOH392ReP8MM0vyIHZ0TeKANhvJGhudOnmE9HNLXVnKJkjqpX5Ev3x2I97a0pXdAGnQ1BnqRAG1vPpADOAqbbFO35Sa/Hd9sM+LAy5vyq73ZRlUnMgbFbLLd2lhQE1EREQkI85DlZd4vvtFNyYveUFR7qwl0xNheaDa1lCR0b6pLDhqFL567Ji4+6+eNw6jqmPBe7IsmqgxQUANAFc88B48/sRZe8oddXO7RAG1wWDAf/7fiThn2khpfn85A+qMyCtTbnlmI2bf/ir+/sHupPtkshyZWVbdwi7fpYWfFhEREZGMOA/VKwsSb/r7+rT2TbfkWzSiKhaojqsvS7Jl5irtFvzmK0cplu5Z/7Mz8PMFRygC5GTzPEUWkxH1srLhiSOUwf/fP9g1+AFTRkJhQVq+SWRP0lhu6ugq/OnymRjXUA4AqGBAnRFvku7+elB0+WaGuqRkFFC3t7dj1qxZqK2txaJFiyAIQtLtBUHAb37zG0yaNAkNDQ247rrrMDAwMKgBExEREeWSGFDL5wonmyspls4CgD3J0lNaGipkga2OS2bJyZdIqo4GzyMqYxnqdNcglgfh08dUKx5bmaQMnnJDa+m1RE3JtIgB9QNvbsfcO17F39bxokgy6vnqerPISr5b68pz+lqkr7QDap/PhwULFmDmzJlYt24dNm7ciBUrViTd54EHHsDdd9+NRx55BG+//TbWrl2La665ZrBjJiIiIsoZMcCUZ6QCSZbKKrOZ8PA3jsNtXz4SrRlmmeVZqRljajIbaJpmjauLu6/KEQuy1UsvJVJlj2Wyjx9fr3hsa2c/m1vlmdZ66OleHAFiTcm2dQ1gr9OL//7HJ7qNbShK1t1fD2PrYt8dF8wYndPXIn2lvWzW888/D6fTiWXLlqGsrAy33347rrvuOlx99dUJ91m5ciUWLVqE4447DgDwi1/8AgsXLkz6Oj6fDz5frKumy8X1DYmIiCh/7KoMtTcQSnoybTIYcPJhjVm/3jPXn4A9vR5MU2V99fLdk8fD5Q3gDFlHcfnczrFpXgSQZ+wvPLoZdosJo2vs+MaKdXB6AtjT68FhTZX6DZyS0jomM8lQ7zzkjruvZ8CP2hxVSpQ6dYb6mNYazB5fD0EA7l39Rdz2/+9LEzN6/iXnTcF+lxeNFba4ChAqbmkH1OvXr8ecOXNQVhb50p0+fTo2btyYdJ+uri60trZKt00mE0ym5H/od9xxB37xi1+kOywiIiIiXalLvq995MOk25sGOd9x2pjqnAXTQOQCwc3nTY27/x/XHI/2Pc60LwbcOH8SfvrkBiy9aDosJiMWHBXJoo2pdcDpCWDXITcD6jzSKkG2JZlDrXbCxAa8vvmg4r51O3oUS7lRjHoO9TdOaMN50yN/A+qAev3PzpCmV6RrRKUdf0tjDXsqPmn/1blcLrS1tUm3DQYDTCYTenp6Eu4zY8YMPPXUU9Lthx56CGeccUbS11m8eDGcTqf0b9cuzucgIiKi/HFYlU3JPtndm3R7UwadfIvJsePq8PV5bWl3Ij5tShPe++l8nHr4CMX9Y2odAIDdPR7dx0iJDTZDfcWcsfjvsyYr7utx+xNsTV7VnPUaRyyTL1+WDEDGwTSVtrQDarPZDJtNuWSC3W6H2x1fLiK6/fbbsXbtWpx44ok46qij8MQTT+D6669P+jo2mw1VVVWKf0RERET5InZK9gZCGPAF0dUfCTJe/sFJmtsbM+zsPdSMqY1UL+7uSXxOSPrTmvueyRxqu8WEa0+ZiJd+cBKmNUcqJNycB5+Qes66vDv+v66dq1hHmoaXtD/5uro6HDyoLAvp6+uD1Zp4nsW4ceOwceNGLF++HK2trTj99NNx4oknZj9aIiIiohyTz6EW55nWllkwqakSR7XUSNstOXcKrCYjfnPx9EIMs2gwQ10Yfo1GeZlkqEWHNVVi8shIqb47x52sS5k6Qy1fv91uMSma9tHwknZAPWvWLKxZs0a63dHRAZ/Ph7q6+M6RcgaDAVVVVXjllVewdOnS7EdKRERElAfyOdQ7uiMBdWu0A+9/nxkpkb1yzlh868TxaP/FmThWo4v2cNISzVDvYoY6r7Q6z2eSoZYri05z8PgZUCeinrOuXr99kmptdho+0g6oTzrpJDidTqxcuRIAsHTpUsyfPx8mkwkulwuBQOL1GX/1q1/hkksuwTHHHDP4ERMRERHlkBiUHBrwY1c0Q91aH1kXdt7EBrz/P/PxywuOAACWeQIYU5c4Q/3uF93Y7/Tme0jDglbJdzYZaiDWN8DNgDohdUBdYVP2dv7tJdNx4YzRePb7J+RzWFQE0u7ybTabsXz5clx22WVYtGgRQqEQVq9eDSDS8fuuu+7ChRdeGLff1q1b8eijj6K9vV23QRMRERHlihiU/PvjvfhgR6T5ar1sKaHGSpvmfsNVc00koO51B9DnDaDSboE3EML6Xb249P41qHZYsP7nyZvSUua0MtSZdPmWK7dGQgK3n3OoE9nbq7wwpG7mN6a2DHctPDqfQ6IikXZADQAXXnghtmzZgnXr1mHu3LlobIwss9DR0ZFwn4kTJ8LpdA5qkERERET5YrfGsnxi1jXbUtrhoNJuQU2ZBb3uyFrUobAbF9/zjrTMkNMTwIAviHJbRqedlIJmQJ1lxUQZM9QpsekeJZLxX11zczMuuOACKZgmIiIiGkq0ymbtWWb+hguxMdnWzn6ce/dbcWv2vvLZgUIMC4FQGGu2dWuu2VzqxGWz6mTVE+kugabGku/k5N3+AcA0zDv7kxIvFRIRERHJaAXPzFAnN7a+HO17XLj+0Y80H7/h8Y9x8mGNqClLvDqMXl7b3IltBwfwzRPacOdLm3Hf6m24YMZo/H6IleMGQgIAYFpzNU6Y2IBRNfasn0ss+WZTMm1iw71qhwV3XnIUjhjNZX0phgE1ERERkYxJI8tnZ/OxpCY0pu5wvLvHk5eA+uqH3gcQCTTvW70NQGQ+/NALqCMZaovJiG+fNH5QzyVmqAc4h1rTzmi3/7H1ZTh9alOBR0PFhv93ICIiIpI55PbH3eewMkOdzMQ0lgzKRzmxIAjSzzu6B3L+eoUkBtTZzpuWS7ZsVigs4I7nP8MrGwtTtl8MxPXoW6LL5xHJMaAmIiIikpkzvj7uPpZ8JzcxSYb68JGVACLreueaT7aUlF+jaddQIi6bZTENfj5vsqZkz7fvw32rt+FbK9cN+nVKlbR8HgNq0sCAmoiIiEhmQmMFFp05WXGfzcyAOpmx9dqBxrFja6Xu3vmYn+vyBqSf1Y3Rhhq/rOR7sMpky2Y53QF86+H38dwn+wBAsY64vAJgONkV7fbPgJq0MKAmIiIiUhGzqiJ2+U6uzGqCVVZ6fO8Vx+CKOa1YftWxUtf0fHTa7vPG5gD3DPhVjwXw2T5XzseQL4FgJLi16ljy7faH8PtXt+CVzzpx3aMfAlAG7MO1C/hOZqgpCf7fgYiIiEhFXeKttZQWxRgMBlQ7LNLtWePq8KsLp6Gu3Cr9LvMRjLk8sQx194BP8dhl97+Hs3//Jj7e1ZvzceSDPxT5feqRoRZ7BHgCIWw92K94TL7edVe/8nc6HITDAku+KSkG1EREREQq6kZPnEOdmlUW2Ill3oCs4VWeM9TydYMBYMMeJwDgpU/353wc+SAum6VHhrrKHrkYIgjAG58flO73B8PodccuUqh/p8OByxuQ5uY3VWW/NBkNXQyoiYiIiFTUATQD6tTkzbHkFyQKVfJ9aEA7+NMjAC0GejYls1tMGFFpi7v/gMsLp0ceUA+/DLV4HFXazEPm2CF98aggIiIiUonPUPOUKRWzLENtkK3l7UiyJJPe+mRNyeTNtOQ6+4ZGUCiWYltN+lzs0VoSap9zeAbU4bCA9j1O+IIh9EQz9DXllhR70XDF/zsQERERqTBDnTmzUTtTKv7u8l3yvafXo7lNp2toBIVShto8+Aw1ANQ44gPGfU4PeuUBdd/wKPle+W4HzvvDW7jp759Ize3qyqwFHhUVKwbURERERCqcQ525RM2xkq1xrDd5hjqRg0MkyxrLUOtzOi+/4HH+UaMBAAf7fIoM9Y7uAV1eq5ht3OvCLc9sBAA8s34vetyRgLqGATUlwICaiIiISMUWl6HmKVMq5gRzefM5h9oly1AnctClXQpeavRsSgYA86c0AQBGVtmlC0r+UFjROX1jCS87FgiF8dc1O7Cz251wm06XF+fc/abiPrEpW105A2rSxv87EBEREamoM9R6ZQGHspMPawQQv8SYPY9zqMXsc32S4Gev0zskls7ySU3J9Dk2rzx+LH5z8XT889q5UpDuD4alDC0AbOnsT3hhpM8bgCAIuoxFb3e98jkm/c/zWPJUO37wt4+l+33BED7Y0YNgNNv/jw93x+17SMpQcw41aeP/HYiIiIhU1AG1vMkWafveKRPwi/OPwPM3nKi435HHOdR7eiLzpo9urdF8XBzL/W9uy/lYck0s+dYroLaYjPjqrBY01zikgNrjDymWzQqFBWza3xe3b/seJ2b88mX8z1PtuoxFT/e/sQ13vbJFuv3Bjh7p5/9btRUX3/MOnli3CwDQrbEs2Obo+61lyTclwICaiIiISIUBdOZsZhO+NnccxjWUK+4vy2OGWmxENqOlRvPxa0+ZAACKMuZSFQuo9T9WxYB6X7RTutEQq0BY13Eobvs/v7kNobCAR9/bqftYBmNvrwe3/eezuPsfeGs7th3sx6d7IyXs7dE1yvs1pgys2tQJAKhlyTclwICaiIiIKIkqu7nQQyhp+cpQ+4IhHIwuiTWjpVZzm+ZaB4D8zOfONTGgVldT6MFmEgPqyAWKunIbZo+vAwC8tz0+oG6oiK1hHQ4XT9n3gE97Tv2tz27El363GjsOReZT74z+tz/B9gC7fFNiDKiJiIiIkjhmrHZwRukRO6QfGvDrFmw98f5OLPjDW4q1pvf1eqOvZ8RhIys09xPLdr2BsC7jKCS/znOo5cQM9d7o77ShworZbfUAgJc3HsCabd2K7esqYsHmgb7iafqmDpCnjqpS3N7a2Q8A2BFtVNaXJKBurLQlfIyGNwbUREREREmcN310oYdQ0g5rqoDDYsKeXg+e/GiPLs/5439uwIY9Tsy541Ucd9sraN/jxLauSHDUXONAfXl88FNTZoEt2q09H/O5c80f7fKd04A6mqFuqLDhmNYanDCxAQDw93XK5l2BYOxCyUNvdygudBSSfKm2eRPrMSZaoaC2t9eDQCiM/iTLrjVUMENN2hhQExEREWl47NtzsOTcKbj4mOZCD6Wk1VfY8I0TxgEA3t7ahT+8ugVn/O9q9AzEN4DKRmefD99euQ5PfbQXADB7fD1Mxvh5xWcfOTKvS3jlmrQOdQ5KvsWu9mLT7voKKwwGAy6eGflb2Budqy6SX6BY/sY2nL5ste5jyoY8Q/2HS49BRYLpG2Eh8p6SlXwzQ02JcFIQERERkYbjJ9Tj+An1hR7GkDB9TA2AyLJL/4pmqR9duxPXnTpRl+ff5/Ti6fWRgPr8oyIVBYvPPhxvf9GNEybW443Pu/CTs6dIgeBQKPn2BSNBbG4y1Mqlz8Q50qOqIxlecW61SH2BIlnpdD65/ZFxnDipAXXlVlTYEoc+j7+/C4eSXORJti8NbzwyiIiIiCinJo2IzGnefCC25JIxy07qydY6vmJOK44bF2me9d2TJ+C7J0e6en/npMh/xYBJHQAGQ2GYS2ytcbEjdWUOmuaps96jqu0AgNFSQO2FIAhSN/x8dHDPRr8vMi6x03yyoPie179I+lzs/E+JlNY3BxERERGVnNa6MlhNRqmRFgA4LNmdhg6ogjeHxYRTJzfiVxceiV9dOA1GjXJv+baAMqB+9L2dOOLnL+KtLV1ZjacQBEFAXw4DavVSXNOaqwEATdWRTLUvGFZkc4t1TrrY5bs8GkiXM8tMOcCAmoiIiIhyymwyYnyjcn1qdWCcrl53LJAzGICvzxuHh64+DlfMGZtyX3s0iA+GBWkO8k+f3ABfMIwf//OTrMZTCJ5ACMFox/RKu0X355cvxWU0ANPGVEfvN0nl3/tkjceKNaB2iwG1NRJIa2Wox6vWTZcTm7CVW00JtyHiZRoiIiIiyrkJIyqwaX+s5FvMsCYz4AvisvvXYM6Eeiw+ewoAwOmJdGIeUWnD6kWnSkFyOsQlvADglY0H8OyGfdLtYLh05lWLvzujITfBnrzke0JjBcqssZBhZLUNXf0+dPZ5AUQC7WJt8iaWfIuZac2AurEc27oGpNtGA/D/TpuEMbVlOGfaSDz8zg6ceURTfgZMJYkBNRERERHlnDiPWtSXZIkiQRAQDAt45L0dWL/bifW7nbGA2h3Zr9phgSPDYNJmNsJgiHSv/t4jH6oeK50spPi7q7RbcjK312qK/S7qVctFiWt597pjn1+xzqEWm5KJFx20Sr6/PrcNr28+KGX8K2xm3Dj/MOnx750yIQ8jpVLGgJqIiIiIcm5CozqgTpyhvurBtXhTNadZbILVG81Q15RlXupsMBhgN5s0S5TNSeZeD8beXg+aquyaS3lly5XD+dOAMkNdYVP+nqsdkdubD/Thtc2dOOWwRsV6z8VCEAQp86yVoZ45thaHNVVi3sR6vPSDk/Cl30WW+hpRZc//YKmkcQ41EREREeXcjJYayGPKRGv+dvZ544JpIDJn92/rduHaaGZZDOwylahE/GC/L+Pn2tntxm9e2ISuBPuu/vwg5i5dhZ/+a0PGz51MrCGZ/vOnAWVArQ7axQz1fau34eqH3sern3UWZcn3SxsPYO32QwCAclu0y7fsvdx0xmTccdE0GAwG1JfH1phONqeaSAsDaiIiIiLKuZa6Mjx13TwsOTdSup2o5PuDjh7N++cuXYXb//OZdPucaaOyGod8HrVcnzcolQin67I/r8GfXv8CP/rbes3Hf//K5wCAJ9btymyQKbiiWfqqXGWoTYkDanVlwPsdh4qyKdlT0fXO5Spssc++XPZzlSP2HkdU2UCUCQbURERERJQX08fUYPLISgCJS74/3BkJqK+Y04qzjxypeEyct/vA147FRceMyWoMjgQBNQB0ujLLUu/u8QAA3t6qveSWPIuebP3sTOUzQ61u5KWuDBhZbS/KgHqcLNM8ZVQVAGX5epls/r18Hvr4BuXUBKJUGFATERERUd6IQWCigPpANKgdV1+OP11+DFrqHHHbtNaVZf36No2AWmxatd/ljXsskR888bH0c6JQuUIW8MrXbR4sMbufqwy1fNmsirgMtbJJmQGxpmRXzxsn3R8K63cBIRvimuczWmowfUwNAGVW2mRUhkE/PutwnDCxAZce15q3MdLQwICaiIiIiPJGLCF2egKaWVux7LrCZobBYIA3EL+c1WAys/Jg8a/fnI3Vi07Bkc2R5Z8OpBlQB0NhPKlRUqzmls0T7+h2ZzjSxPpy3JTMoij5Vv6ua1Ul3wP+EHzR4PXrc8dJ94vrfBeKGFCfdFijdF+5bPmvxkplaff3TpmAv35rdsad44nY5ZuIiIiI8qa5xgGT0YB+XxD7nF6MrlFmoAeiaweXRUuNtZZkGkwgKW+gdczYGpRZzRhZHensnG7Jd3ea2eZD7th2O7oHMHNsbQYjTazXE3nebBuzpSIv+S5TZfTVc6i7+2PvsUoWfAcLnKH2BSOfs/wCitFowJv/fSr8obDmmtRE2WCGmoiIiIjyxm4xSWtSb9jjjHtczFCLgZy6UZjRoJz/mqkLZjSj0m7Gsq8ehbJoxrIpulRSuiXfB/uUgXei+dHyMu99zvTLyVMRg9iGytw00JIH1DZVV/Rqh7Lke09vJPNutxgVFzqCRZKhlgfUQKQ5nnoJN6LByCigbm9vx6xZs1BbW4tFixal1Vzht7/9LZqamlBVVYWLL74Y3d3dWQ+WiIiIiErf9DGREut2zYBazFBHgmb1+s1iKXi2vnfKBKz/2RmKpmYjooFpuiXfnX3pbScPqPf2ejIYZXJiQC1f7klP8i7f8p8BYEJjOa6eN04KVF/89IA0FpPRAPGj8Rc4oBbL0K1m5g8pt9I+wnw+HxYsWICZM2di3bp12LhxI1asWJF0nzfeeAMPP/ww3njjDXz44Yfwer340Y9+NNgxExEREVEJE7suf36gDwDQ3e/DA29tx6b9LimgFue73nvFTMX61XoUEhtVQXqmJd/qDHVYAJ77ZJ/iPn8wrGi8tl+HDLXTE8DKdzuwtiOyvnJduTXFHtmxmGK/H3UTN4PBgJ8vOAI3zj9McX99hRUGgwGWaLOvYKg4mpKpM9REekt78sDzzz8Pp9OJZcuWoaysDLfffjuuu+46XH311Qn3Wbt2Lc455xxMnjwZAHDppZfiT3/6U9LX8fl88PliX1IulyvdIRIRERFRCRC7dO/p9SAUFnD+H9/Gnl4P7Baj1IRM7Mh82pQmbL3tHIz/6X8AJO4OPhhjaiPj2XqwH4IgpMyAqwNqALju0Q9RVz4Hn+1z4XcvbY57jr06BNR/XLUF97+5XbrdUJGbgFo+9sYK7Sy4XVUKLgb3FpMB/lARBNQhZqgpP9I+wtavX485c+agrCzyhTN9+nRs3Lgx6T5HHnkk/vWvf+GLL75AZ2cnHnjgAZx++ulJ97njjjtQXV0t/WtpaUl3iERERERUApprI43Idvd40Ov2Y0+0HFre0btM1pFZnVHW25RRlbCZjTg04Me2roGU23dqBNQAcOn9a/DLZzdiwB9Cv08Z+O9zDr7ke9P+PsXt+gTBrh7+97+Own+fNRlTR1dpPq5ez1sMqM3REvGCl3xHjyWriV27KbfSDqhdLhfa2tqk2waDASaTCT09PQn3OeusszBp0iRMnDgRTU1NGBgYwE9+8pOkr7N48WI4nU7p365du9IdIhERERGVgOZoZ+9edwB7e7Uzt/IljnLNZjbhqJYaAMD72w+l3L7HHUj7uY8fXw8g8l7lHcazsUO19FZNjrp8A8CXjx6Da0+ZmPDxRMtLieXiwXCBA+oQS74pP9I+wsxmM2w25VUwu90Otzvxmnp/+9vfsGPHDmzatAnd3d048sgjccUVVyR9HZvNhqqqKsU/IiIiIho6Ku0Wafmlz/ZFpveplzFSB2w5TlLjyNGRRmnpZKh9qsDYajbi2e+fgHH1kUrO738pFoiOji4TBkTmQGcrEApLmXxRrjP3ydhVGer+aCm+uIZ1IFjgZbOinxFLvinX0r70V1dXh/b2dsV9fX19sFoTz9147LHH8L3vfU+aQ33XXXehuroavb29qKmpyW7ERERERFTymmsc6HUHsDEaUI+pdWBLZz9C0fWL1YHQg1+fhW+vXIdbzj8iJ+Opj85H7nWnXmNa7CB97vRRuOmMyagrs6K6zIKXf3gy9vV6MabWgT+s2goAaK6xo9JuRq87gD5vQFqiKx1/ebcDv391K/7yzePgsJik30251YSTJzdm+hZ1pS75nhBdCs0czVAHCpyh5hxqype0A+pZs2bhz3/+s3S7o6MDPp8PdXV1CfcJBoM4cOCAdHvfvkj3w1BocOUuRERERFTaxDm3Ow9Fqh2rHRY0VFhxIEGn7VMmj0D7L86EzZybObFixjydcm5fMHIue9YRI9HWUC7dbzEZ0RrNUi+/cib+s2EfrjllAp76eC963QE4PZk1VLv5358CAM7+/ZvS7+vwkZV48tp5BS9lllcQjG8sx7WnTACAoujy/dsXN2HbwUilQaF/TzT0pR1Qn3TSSXA6nVi5ciWuuuoqLF26FPPnz4fJZILL5YLD4YDFopzHMW/ePCxbtgxjxoyBw+HAXXfdheOPPx719fW6vxEiIiIiKh2V9shp6O4eeUBtSxhQA8hZMA0AtWWZZ6iTBWtnHDESZxwxEkDsvbq8iYP1YCgcXcdZu4xbXNP6kmNbEs5fzid5hvp/vzoDlfZIHCCVfBewKdn/vfaF9DMz1JRraQfUZrMZy5cvx2WXXYZFixYhFAph9erVACIdv++66y5ceOGFin1uvPFG7N27F7feeiu6urpw/PHH44EHHtD1DRARERFR6RHnTO/picwLrnZYpEC1EDLKUAcyKyeuigabiZb86hnw49y738RhIyux4urjkj7X5bNb03rNXJPPoRZ/d4Cs5LtAAbW6u3ouL8IQARkE1ABw4YUXYsuWLVi3bh3mzp2LxsbI3I2Ojg7N7e12O+6++27cfffdgx4oEREREQ0dFbZIEDbgj5RPVzssaK51YPXnBwsynswy1JExpxusSRlqVVOyh97ejk92OzG2vgx7nV7sdXrhDYSkYNVmNiouMtjMxrhmYIVikjVEq3HEeiqJy2YVquR7R7eyqRxLvinXMl6PoLm5Gc3NzbkYCxERERENExV25WlotcOCb580Hgf7fDh9alPexyNmWXvdAQiCkLD0Gog1vLJZ0sxQO+Iz1P5gGL94ZmPctrt73Jg4ohLeQCguY281FU9wWFcWC6IrZZ+ltcAZavXSYiz5plzL3wJ/RERERERRVeqAuswCu8WE2748rSDjETPUwbCAfl9QmhOsRSz5Tjf7qTWHesOeXs1tO7oiAXVPNFNuNhoQjHb3thRRcFhdZsG/rp0Lu9mkWL7LHG1KFggXJkPdwQw15RmPMCIiIiLKO/W605ksJ5ULdosJ9mjGuTfFPOpYU7L0yq/FOdTyku812w5pbisGhOL63DVlVnznpPEAkLMlw7J1TGstpo6uUtwnBv2BAs2Hd6o+O2aoKdeYoSYiIiKivFOXfB/TWlugkcSMrLKjo9uNp9fvxXWnTky4XWwOdWYZ6kfe24mO7gFcfMwYvJFgrnhH9wD6vAF8Y8W66D0CfnzW4bh8dita68rSfzMFYolmq4MFWoe6mMvkaWjiEUZEREREeSfPUI+rL0Njpa2Ao4kQg+h7Xv8C3kBIcxtBEGIZ6gznUAPA21u78cO/rcd727Uz1L3uAN7a0iXd7ur3w2Q0YGx9edJ53cUi1uW7MCXf6oDazICacoxHGBERERHlnbyR1bHj6go4kpiLjxmD0dV29PuCeH1zp+Y2gZAAIRorplvyPXVUleb94xvLcfelRwMAZrdFfgd93iBek732ojMnpzv8olDodajF6gGifGFATURERER5J2/6dezYwpd7A4DRaMCCo0YDAJ5Zv09zG3nAlm7J95HN1Zqlx4ePrMT5R43Gp784E1fPGwcA6PMG8MluJwBg+ZUzk5aeFyNLgZfN8hdwLXManhhQExEREVHelVlj2d1iyVADkALqVz47gH5fMO5x9brQ6fr39fPwjXlt+PmCqdJ94xsqAADlNrN0gcHlDUqNySY1VWb+BgpMvHBQqEyx+PmcfeRIPH/DiQUZAw0vDKiJiIiIKO9GVtkxvrEc08dUY0JjeaGHIzlidBXaGsrhC4bx+1c+h8evDAzFgM1qNmY0p3nKqCr8bMFUzJJdPGhriL1vsQR+a2c/vIEwTEYDxtQ6BvNWCqLMFrlQ4vYXJqAWM9TzpzRhSoJSeyI9scs3EREREeWd2WTESzeeBJPRUFTNtgwGA06Y2IDtXQO4/83tcFjN+OHph0mP+wKZdfhWmziiQvpZvlSYet3rllqHVD5dSsqtkfBiQCO7nw9iZpzLZVG+8EgjIiIiooIwmzLL8ubL7PGxLPJf1+xQPJbpGtRqdosJ3zyhDSdOasBxbbHXqVQtIzauoXiy9pkoj3ZvHyhQhjr2+TDMofxghpqIiIiISObESY3Sz+qGaXoEbDefNzXuPnVAPbkE508DQLlU8l2YDLVfWtIsuwseRJnipRsiIiIiIplqhwW/vngaAMCvWv5JKvlOcw3qdNnMJkWZ8tTRpTn/t0wq+S5shlqrqzpRLvBIIyIiIiJScUQDQ19AFVDnMGCrsMWy1EeUaEBdHu3eXqg51LEMNcMcyg8eaUREREREKvZottirWv4plyXFhwb80s9tDRVJtixe4hzqdTt6sPrzg3l/fakpGTPUlCc80oiIiIiIVOzRgNmrylA7PQEAsUysnqY1VwMALp/dCpOx+Jq1pUOcQw0AX3twbd5fX6wgsDNDTXnCpmRERERERCpi0zFxzrSoo3sAADC2Xv8u3L++eDo+2HEIC49r1f2580WcQ10ofqkkn03JKD8YUBMRERERqYgZajHjKdrWFQmox+dgWaupo6tKthmZqLzAAbWPc6gpz3ikERERERGpxEq+lRnq7QcjAXVbia4TnWvykm8ACKi6pOdSMBRGKCwA4Bxqyh8eaUREREREKuIcXHlALQgCtkcz1G2NDKi1lNuUGep+b/bdvvf0erD4Xxuw5UBfWtvLlzhjhpryhUcaEREREZGKzRzNUMtKvg+4fPAEQjAZDWitKyvU0IqazawML/oyDKg/2HEIT360GwDwk39+gsfW7sTF97yDXYfceHr9XoSjGWgtftlnxQw15QvnUBMRERERqYgZ6lBYQDAUhtlkxLaufgBAa10ZLAzYNBkMyu7kLm8g7X3DYQEX3/MugEjH8/Y9zuhzBHHO799Eny+IQDCMi2eO0dxfnD9tMhpg5udDecIjjYiIiIhIxS5bZ1rMUkvl3pw/ndSKq2dJP2eSod7S2S/97PQEUVdujT2PL/I8qzZ1JtzfF13iTJ0lJ8olHm1ERERERCrykmFvIITN+/vwP0+2A2BAncopk0dgRksNAKAvgwz1+x2HpJ8DoTCqHZa4bfxJmpz5Q5H57lYG1JRHPNqIiIiIiFSMRoMUmHn8IVzz1w+kxyaNqCjUsEpGpT0yszSTDPWne13Sz95ACG5/KG6bZF3DvcxQUwHwaCMiIiIi0mCPBmZ7ez1Sufd3ThqP82eMLuSwSkKVPZJdziRDfWjAJ/3sDYTQ4/bHbeP0JH4+XzASgMvL9YlyjU3JiIiIiIg0iI2tvv7Q+wCAKrsZPz1nSiGHVDKyyVD3DMSCZW8gjB53fPC8r9ebcP8BXySgdjCgpjxihpqIiIiISMOhgUiG1BNdi7pKY04vaRPXox7QKNuWEwQBr2w8gAMuryIj3T3gVyyDJers88KT4DnFEvEyKwNqyh9mqImIiIiI0iCWMVNqYpbYG9AOfrcd7IfRYMCGPU58/7GPMLraDn8otsb0vl4PgEiDMXlgHRaAT3b3Yvb4+rjn9AQi2fAyK0Mcyh9mqImIiIiI0iCWMVNqDmvigNrjD+FLv1uNU+58Hc9+shcAsNfpRa8sQ727JxJQ15db8a9r56K5xiE99uHOXs3XZIaaCoEBNRERERGRhse+PQeTmyql2yz5Tp/YGMyjEVAfkgXO8k7ewXAsQ/15Zx8AYEytA8e01uLtn3wJPz3ncABA+x6n5mt6GFBTATCgJiIiIiLScPyEevzuq0dJt1nynT6x5FtrvrNPFmR39cd38gaAbQcjXdVb6sqk+0ZWO6L7+DT3kZqSseSb8ogBNRERERFRAiOqbNLP5TZmPtNlt0TX8NbIUIuBLwB8fqAv6fO01MYC6ppohUCipbPc0hxqfk6UPwyoiYiIiIgSqC+PBdSBUHzXadKWrClZvy+2lFZIVuatZUxtbO50TVnygFrMhpczoKY8Yj0EEREREVECJqNB+tkbYECdLrs18RzqAV/82tTHtdXhS4ePwO4eN/66Zqd0/7iGcunn6miGuldjfWogNh+bJd+UTxllqNvb2zFr1izU1tZi0aJFEITkV5RuueUWGAyGuH+vv/76YMZMRERERJR3wRTZVIqJZajjL0IM+JUB9cJZLfjbd4/HNSdPwJRRVdL9x7TW4NixtdLtGocVQCRIl2epB3xBXP7nNfjHB7sBsOSb8ivtgNrn82HBggWYOXMm1q1bh40bN2LFihVJ9/nJT36Cnp4e6d/69evR2NiIo48+erDjJiIiIiLKixtOm4RKuxk3nDap0EMpGcmaksnnUAPAqYePkH62m2PB8JLzpsJgiFUIyJctO/6OV6Vy8r+s2YG3t3bHXpsBNeVR2gH1888/D6fTiWXLlmHChAm4/fbb8cADDyTdx263o6amRvr3xz/+ET/4wQ9QXV096IETEREREeXDD04/DB//7AxMHFFR6KGUDHuSOdTqku/R1bF50uJ+ADCi0qbYzigrv3f7Q3htUycA4IDLq9iOGWrKp7QnGKxfvx5z5sxBWVmk09706dOxcePGtF9o7969ePLJJ7F9+/ak2/l8Pvh8sVb4Lpcr7dcgIiIiIsoF+VxqSs2RZB3qflVAPbLaLv3sD8W2b1QF1GrPbtiHs6eNgi+oLCsv5xxqyqO0M9QulwttbW3SbYPBAJPJhJ6enrT2v/fee3HZZZehoiL5lb077rgD1dXV0r+WlpZ0h0hEREREREXAbo0tm6Xuu+RWzaGuL7dKP7s8scds5uSZ5lWfdcLtD8KtCtBZ8k35lHZAbTabYbMprxLZ7Xa43e6U+4ZCIdx///245pprUm67ePFiOJ1O6d+uXbvSHSIRERERERUBMUMtCIjLIPer5lDLS7lPnRyZTz2hsRxammTrgnsCIbz46X4ccPkU2zBDTfmU9tFWV1eH9vZ2xX19fX2wWq0J9oh57bXX0NDQgClTpqTc1mazxQXuRERERERUOuRzoX2BsOK21rJZotb6MqxZfJq05rTaE985Hq9t7kSPO4C7X92CXz+/GQf7lQF1S51Dc1+iXEg7Qz1r1iysWbNGut3R0QGfz4e6urqU+/7tb3/Dl7/85exGSEREREREJcViMsIczTyr51HLA+pbLzgibt+R1XZFAC43rqEcV89rw7dObENDhRX7XV6EVMuZ1ZSlTvgR6SXtgPqkk06C0+nEypUrAQBLly7F/PnzYTKZ4HK5EAhoL7AOAC+88AJOPfXUwY+WiIiIiIhKglj27fIq4wRxHeo/XHo0rjx+XFbPXWW34NFvzxnU+Ij0kNEc6uXLl+Oaa65BU1MT/vGPf2Dp0qUAIh2/n3vuOc39vvjiC+zduxezZs3SZ8RERERERFT0bNGA+tpHPlTcL65DXWEb3Fznw5oq8e0T2xT3Wc1phzdEusjoKL7wwguxZcsWrFu3DnPnzkVjYyOASPl3IhMmTEAwmHieBBERERERDT1zJ9Tj6fV70afOUEdLvvVYL/onZ0/Bf81qwT6nF798ZiNuv2jaoJ+TKBMZXxZqbm5Gc3NzLsZCRERERERDxPVfmoin1+9FIKSc4yyuQ10+yAw1EFkffOKISkwcUYmXf3jyoJ+PKFOsiSAiIiIiIt1ZTZFQI6BaNsvt16fkm6gYMKAmIiIiIiLdWaLzmf2hWEAtCILUlKzMNviSb6JCY0BNRERERES6s5giy2YFZAG12x+CEK0AZ4aahgIG1EREREREpDux5DssQForWmxIZjTEltUiKmUMqImIiIiISHcWUyzU8EfnUQ9E50+XW80wGAwFGReRnhhQExERERGR7hQBdbTsW1oyi/OnaYhgQE1ERERERLoT51ADsXnUei6ZRVQMGFATEREREZHuDAZDbOksVYaaDcloqGBATUREREREOSF1+g5GmpKJGeoyK0u+aWhgQE1ERERERDkhX4vaGwjhhsc/BsAMNQ0dDKiJiIiIiCgnxMZk/mAYnx/ok+6f1lxToBER6YuXhoiIiIiIKCfkc6g7ugcAAGPry3D9lyYWclhEumGGmoiIiIiIcsJqjgXU2w5GAurjx9fDZOQa1DQ0MKAmIiIiIqKcEJuS+UNhbO+KBNRtDeWFHBKRrhhQExERERFRTlikkm8BOw65AQBj6xlQ09DBgJqIiIiIiHJCCqiDYfR5AgCAunJrIYdEpCsG1ERERERElBNiUzJ/KIy+6BrUXDKLhhIG1ERERERElBMWc2QOdSAURr83ElBX2hlQ09DBgJqIiIiIiHJCzFB7/CF4AiEAzFDT0MKAmoiIiIiIckKcQ/3kR3uk+yqYoaYhhAE1ERERERHlhCW6DvV72w8BAOwWoxRkEw0FPJqJiIiIiCgnrKrg2WJk+EFDC49oIiIiIiLKCYvJoLjd7w8WaCREucGAmoiIiIiIckJd3i0IBRoIUY4woCYiIiIiopywmhlu0NDGI5yIiIiIiHJCPYeaaKjhEU5ERERERDlRW24t9BCIcooBNRERERER5cT8KSMUt//6zdkFGglRbnBVdSIiIiIiyomJIyoxqtqOfU4vXrvpFLQ1lBd6SES6YkBNREREREQ58/wNJ6Kr38dgmoYkBtRERERERJQzNWVW1JRxLjUNTZxDTURERERERJQFBtREREREREREWWBATURERERERJSFjALq9vZ2zJo1C7W1tVi0aBEEQUh734ULF+L73/9+xgMkIiIiIiIiKkZpB9Q+nw8LFizAzJkzsW7dOmzcuBErVqxIa98XX3wRq1atwq233prtOImIiIiIiIiKStoB9fPPPw+n04lly5ZhwoQJuP322/HAAw+k3M/j8eDaa6/F0qVLUVNTM5ixEhERERERERWNtAPq9evXY86cOSgrKwMATJ8+HRs3bky536233gqPxwOz2YxVq1alLBP3+XxwuVyKf0RERERERETFJu2A2uVyoa2tTbptMBhgMpnQ09OTcJ+dO3di2bJlmDhxInbu3IlFixbhoosuShpU33HHHaiurpb+tbS0pDtEIiIiIiIiorxJO6A2m82w2WyK++x2O9xud8J9VqxYgaamJrz88stYsmQJXn/9daxevRovv/xywn0WL14Mp9Mp/du1a1e6QyQiIiIiIiLKG3O6G9bV1aG9vV1xX19fH6xWa8J9du/ejdNOO00KxCsrKzFp0iRs37494T42my0ucCciIiIiIiIqNmkH1LNmzcKf//xn6XZHRwd8Ph/q6uoS7tPS0qKYZx0Oh7F7926MHTs27QGK5eGcS01ERERERET5IMafqXqApR1Qn3TSSXA6nVi5ciWuuuoqLF26FPPnz4fJZILL5YLD4YDFYlHs89WvfhUzZ87EP//5T8yePRt/+MMf4PP5MG/evLTfSF9fHwBwLjURERERERHlVV9fH6qrqxM+bhBShdwyTz31FC677DJUVlYiFAph9erVOOKIIzBu3DjcdddduPDCC+P2ee6557BkyRJs2rQJEyZMwH333ZdRQB0Oh7F3715UVlbCYDCkvV++uVwutLS0YNeuXaiqqir0cKjI8PigVHiMUCo8RigZHh+UCo8RSobHRzxBENDX14fRo0fDaEzceiyjgBoA9uzZg3Xr1mHu3LlobGwc9ECHCpfLherqajidTh6EFIfHB6XCY4RS4TFCyfD4oFR4jFAyPD6yl3bJt6i5uRnNzc25GAsRERERERFRyUh72SwiIiIiIiIiimFArRObzYaf//znXPKLNPH4oFR4jFAqPEYoGR4flAqPEUqGx0f2Mp5DTURERERERETMUBMRERERERFlhQE1ERERERERURYYUBMRERERERFlgQE10RDQ3d2Nd955B11dXYUeCpUYHjuUCo8RIiKixIZEQP3vf/8b48ePh9lsxuzZs/HZZ58BANrb2zFr1izU1tZi0aJFUPdf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\n",
      "text/plain": [
       "<Figure size 1200x400 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "cash_value=pd.Series(result)\n",
    "cash_value.plot(figsize=(12,4))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 13,
   "id": "41d7fb97",
   "metadata": {},
   "outputs": [],
   "source": [
    "stock_name_id=stock_daily[[\"股票简称\",\"股票代码\"]].drop_duplicates().sort_values(\"股票代码\")\n",
    "#.to_csv(\"stock_name.csv\",index=False)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 16,
   "id": "de64e338",
   "metadata": {},
   "outputs": [],
   "source": [
    "stock_name_id=stock_name_id.set_index(\"股票简称\")[\"股票代码\"]"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 17,
   "id": "aa028bb9",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "'002594.SZ'"
      ]
     },
     "execution_count": 17,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "stock_name_id[\"比亚迪\"]"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "057873cd",
   "metadata": {},
   "source": [
    "## 用沪深300作为对比基准\n",
    "\n",
    "* ak.index_zh_a_hist 获取沪深300的指数历史数据的方法并作图"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 53,
   "id": "a2d1e959",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "                 开盘       收盘       最高       最低        成交量           成交额    振幅  \\\n",
      "日期                                                                              \n",
      "2018-02-22  4020.97  4052.73  4058.79  4009.92  105811571  1.383344e+11  1.23   \n",
      "2018-02-23  4061.75  4071.09  4085.20  4035.23   99458747  1.281958e+11  1.23   \n",
      "2018-02-26  4093.40  4118.42  4128.74  4048.98  137881001  1.790131e+11  1.96   \n",
      "2018-02-27  4120.87  4058.98  4120.87  4051.81  125934469  1.696849e+11  1.68   \n",
      "2018-02-28  4016.79  4023.64  4051.71  3991.71  109343593  1.524939e+11  1.48   \n",
      "...             ...      ...      ...      ...        ...           ...   ...   \n",
      "2023-02-06  4103.83  4086.88  4105.94  4065.22  110192717  2.263451e+11  0.98   \n",
      "2023-02-07  4098.31  4094.23  4107.34  4077.96   91360072  1.835374e+11  0.72   \n",
      "2023-02-08  4099.86  4076.14  4111.47  4072.65   84786099  1.705918e+11  0.95   \n",
      "2023-02-09  4067.56  4130.86  4130.86  4064.75  102289961  2.117226e+11  1.62   \n",
      "2023-02-10  4124.10  4106.31  4125.29  4092.35   96716733  1.953483e+11  0.80   \n",
      "\n",
      "             涨跌幅    涨跌额   换手率  \n",
      "日期                             \n",
      "2018-02-22  2.16  85.77  0.34  \n",
      "2018-02-23  0.45  18.36  0.32  \n",
      "2018-02-26  1.16  47.33  0.44  \n",
      "2018-02-27 -1.44 -59.44  0.41  \n",
      "2018-02-28 -0.87 -35.34  0.35  \n",
      "...          ...    ...   ...  \n",
      "2023-02-06 -1.32 -54.75  0.35  \n",
      "2023-02-07  0.18   7.35  0.29  \n",
      "2023-02-08 -0.44 -18.09  0.27  \n",
      "2023-02-09  1.34  54.72  0.33  \n",
      "2023-02-10 -0.59 -24.55  0.31  \n",
      "\n",
      "[1207 rows x 10 columns]\n"
     ]
    }
   ],
   "source": [
    "index_zh_a_hist_df = ak.index_zh_a_hist(symbol=\"000300\", period=\"daily\", start_date=\"20180222\", end_date=\"20230210\")\n",
    "index_zh_a_hist_df.set_index(\"日期\",inplace=True)\n",
    "print(index_zh_a_hist_df)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 54,
   "id": "a93ea90f",
   "metadata": {},
   "outputs": [],
   "source": [
    "index_time=index_zh_a_hist_df[\"收盘\"][start.date().isoformat():end.date().isoformat()]"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 55,
   "id": "8edb040b",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<Axes: xlabel='日期'>"
      ]
     },
     "execution_count": 55,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAABaUAAAFzCAYAAAAubGUeAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjcuMCwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy88F64QAAAACXBIWXMAAA9hAAAPYQGoP6dpAADYZ0lEQVR4nOzdd3SVVdbH8e9N7wlJSAIk9N47CiKCCiqI2LH3hmPXURyddxxnRp1Bh7E31BnFigUFERWw0JTeOwRCQknv/d73j5Obm0t6vSm/z1pZ5zznaTuhiDs7+1hsNpsNEREREREREREREZEm4ObqAERERERERERERESk7VBSWkRERERERERERESajJLSIiIiIiIiIiIiItJklJQWERERERERERERkSajpLSIiIiIiIiIiIiINBklpUVERERERERERESkySgpLSIiIiIiIiIiIiJNRklpEREREREREREREWkySkqLiIiIiIiIiIiISJNRUlpEREREREREREREmkydk9LnnXce7733XrXX/fzzz/Tr14/w8HBeeOGFur5ORERERERERERERFoBj7rcNH/+fJYuXcrMmTOrvC4xMZHp06fz0EMPcdVVVzFz5kyGDRvGxIkTa/wuq9VKQkICgYGBWCyWuoQrIiIiIiIiIiIiIo3MZrORmZlJx44dcXOrvB661knplJQUHnroIfr06VPttfPnz6dDhw48+eSTWCwW/vznPzNv3rxaJaUTEhKIiYmpbZgiIiIiIiIiIiIi4gJxcXFER0dXer7WSemHHnqIiy++mNzc3Gqv3bJlC5MmTSqtcB49ejSzZ8+u8p78/Hzy8/NLj202G2A+kaCgoNqGKyIiIiIiIiIiIiJNICMjg5iYGAIDA6u8rlZJ6RUrVrBs2TK2b9/OvffeW6Mg+vfvX3ocFBREfHx8lfc888wzPPXUU+XWg4KClJQWERERERERERERaeaqa8Nc440O8/LyuOOOO3jttddqnBz28PDA29u79NjHx4ecnJwq75k9ezbp6emlH3FxcTUNUURERERERERERESauRpXSj/99NOMGjWKqVOn1vjhoaGhJCYmlh5nZmbi5eVV5T3e3t5OiWwRERERERERERERaT1qnJT+8MMPSUxMJCQkBICcnBw+/fRTfv/9d1599dUK7xk1ahQfffRR6fHmzZvp1KlT/SIWERERERERERERkRbLYrPvJFiNo0ePUlRUVHr88MMPc9ppp3HjjTfi5eWFr68vnp6eTvckJSURExPDt99+y/jx45kxYwbdunXjpZdeqnGAGRkZBAcHk56erp7SIiIiIiIiIiIiIs1UTXO5Na6Ujo6OdjoOCAggPDyc8PBwunbtyty5c5kxY4bTNeHh4Tz//PNMmTKF4OBg/P39mTdvXu0+ExERERERERERERFpNWpcKV0f+/fvZ9euXUyYMKHW1c6qlBYRERERERERERFp/hq8Uro+evbsSc+ePZviVSIiIiIiIiIiIiLSjLm5OgARERERERERERERaTuUlBYRERERERERERGRJqOktIiIiIiIiIiIiEhDyDgGxYWujqLZU1JaREREREREREREpCEsvBue7wt7v3d1JM1ak2x0KCIiIiIiIiIiItKqZRyDgyvAZoWwHq6OpllTpbSIiIiIiIiIiIhIfW37zCSkY8YoKV0NJaVFRERERERERERE6mvrp2YcMtO1cbQASkqLiIiIiIiIiIiI1Ef6UTixDSxu0H+Gq6Np9pSUFhEREREREREREamP/cvM2GkE+IW6NpYWQElpERERERERERERkfrY/6MZe57r2jhaCCWlRURERERERERERGqjuAiKC808P9NRKd3zHNfF1IIoKS0iIiIiIiIiIiJSU9ZieOsseHkkFGSbDQ4LsyGsF3Qa7uroWgQPVwcgIiIiIiIiIiIi0mLEb4Dj28x83w/w+1tmPvImsFhcF1cLoqS0iIiIiIiIiIiISE3t/c4x/+wGM/oEw5CrXBNPC6T2HSIiIiIiIiIiIiI1tff78mvnPQd+oU0fSwulpLSIiIiIiIiIiIhITeRnwomS1h3uXmBxgzMfgSEzXRtXC6P2HSIiIiIiIiIiIiI1kXbEjL6hcNcqKMiB8J6ujakFUlJaREREREREREREpCbsSemQzhDU0bWxtGBq3yEiIiIiIiIiIiJSE2WT0lJnSkqLiIiIiIiIiIiI1ISS0g1CSWkRERERERERERGRmkg7bEYlpetFSWkRERERERERERGRmlCldINQUlpERERERERERESkJpSUbhBKSouIiIiIiIiIiIhUJy0OclPNXEnpelFSWkRERERERERERKQ6m943Y9fx4B3o2lhaOCWlRURERERERESau8I82PopZCW6OhKRtqm4EDaWJKVH3OjSUFoDJaVFRERERERERJq7X+fAF7fB/EtdHYlI27T1U8hMAP/20O9CV0fT4ikpLSIiIiIiIiLS3G37zIzHtrg2DpG2yGo13xgCGHsPeHi7Np5WQElpEREREREREZHmzt3L1RGItF2phyDlIHj4wMhbXB1Nq6CktIiIiIiIiIhIc+depjLTanVdHCJtUfpRM4Z0Bu8A18bSStQpKZ2cnMzq1atJSkpq6HhERERERERERORUbu6OeU6y6+IQaYsy4s0YHO3aOFqRWielP/74Y3r27Mndd99N586d+fjjj6u958ILL8RisZR+nHPOOXUKVkRERERERESkTcpLd8ztCTIRaRr2SmklpRtMrZLSaWlp3HPPPfz6669s2rSJN954g0cffbTa+zZs2MC2bdtITU0lNTWVhQsX1jlgEREREREREZE2J7vMT6srKS3StNLjzBikpHRD8ajNxZmZmcydO5eBAwcCMGTIEFJTU6u85+jRo9hsttJ7RERERERERESkFgrzoCDTcZyR4LpYRNoiVUo3uFpVSsfExHDNNdcAUFhYyJw5c7jkkkuqvOf333+nuLiY6Oho/P39mTlzZrWJbBERERERERERKZFzyp5eqpQWaVrp6ind0Oq00eGWLVuIjIzk+++/Z+7cuVVeu3fvXkaMGMHSpUtZv349sbGxPP7445Ven5+fT0ZGhtOHiIiIiIiIiEiblZ3ofJyupLRIk7HZVCndCOqUlB48eDDLli1jwIAB3HTTTVVe+9hjj7FkyRIGDBhAv379eO6551iwYEGl1z/zzDMEBweXfsTExNQlRBERERERERGR1iE7+ZTjk7W732aDb+6H759osJBEGl1+Jnx4JbxxJuRnNf77spOhKL/8ekY8FGabeVCnxo+jjahTUtpisTBs2DDee+89Fi5cWKt2HCEhISQlJZGfX8EvMjB79mzS09NLP+Li4uoSooiIiIiIiIhIy5QeDz/+BbJKks+nVkpnJ5W7pUopB2HDu7D6JcjTT6RLC7HgZtj7HRzbAnuWNO67kvbB873hi9sca5knTDJ80YPmuNMI8PRp3DjakFolpZcvX84jjzxSeuzhYfZJdHOr/DGXXXYZa9euLT1et24dUVFReHt7V3i9t7c3QUFBTh8iIiIiIiIiIm3G0sdh5b/h3fPNsb0yun3fkuPEiu+rTOohxzxdxX8ucWwLrHkV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\n",
      "text/plain": [
       "<Figure size 1800x400 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "index_time_scale=index_time/index_time.iloc[0]\n",
    "index_time_scale.plot(figsize=(18,4))\n",
    "cash_value=pd.Series(result)/1000000\n",
    "cash_value.plot()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 10,
   "id": "f119f43a",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "'2020-08-22'"
      ]
     },
     "execution_count": 10,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "start.date().isoformat()"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "3603cd23",
   "metadata": {},
   "source": [
    "## backtrader多股策略中交易机制的影响及其停牌涨停的处理\n",
    "\n",
    "* 使用pandas编写策略，仅仅用backtrader作为交易结果分析器\n",
    "\n",
    "* 默认下单模式\n",
    "\n",
    "假设为日线数据，在next方法中调用订单方法。\n",
    "执行逻辑为，当天收盘后提交订单，次日使用开盘价执行订单。\n",
    "\n",
    "在backtrader中对任何时间粒度的数据，下单时机是当前bar（索引为0）的完成时间点；执行时机是下一根bar（索引为1）开始。"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "19de0ba5",
   "metadata": {},
   "source": [
    "## 单因子策略\n",
    "\n",
    "* 市值\n",
    "\n",
    "市值，是指一家上市公司的发行股份按市场价格计算出来的股票总价值，其计算方法为每股股票的市场价格乘以发行总股数。整个股市上所有上市公司的市值总和，即为股票总市值。\n",
    "\n",
    "以某个时间段为周期，基于市值因子排序选择特定股票买入和抛出"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 18,
   "id": "d91afe44",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "Index(['index', 'date', '股票代码', '股票简称', 'open', 'high', 'low', 'close',\n",
       "       'volume', '成交额(千元)', '换手率(%)', '量比', '市盈率(静态)', '市盈率(TTM)', '市盈率(动态)',\n",
       "       '市净率', '市销率', '市销率(TTM)', '股息率(%)', '股息率(TTM)(%)', '总股本(万股)',\n",
       "       '流通股本(万股)', '总市值(万元)', '流通市值(万元)', 'openinterest'],\n",
       "      dtype='object')"
      ]
     },
     "execution_count": 18,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "stock_daily.columns"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 24,
   "id": "51bb312f",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "'2018-01-02'"
      ]
     },
     "execution_count": 24,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "str(time_i[i].date())"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 21,
   "id": "336c93bd",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<DatetimeArray>\n",
       "['2018-01-02 00:00:00', '2018-01-03 00:00:00', '2018-01-04 00:00:00',\n",
       " '2018-01-05 00:00:00', '2018-01-08 00:00:00', '2018-01-09 00:00:00',\n",
       " '2018-01-10 00:00:00', '2018-01-11 00:00:00', '2018-01-12 00:00:00',\n",
       " '2018-01-15 00:00:00',\n",
       " ...\n",
       " '2023-02-06 00:00:00', '2023-02-07 00:00:00', '2023-02-08 00:00:00',\n",
       " '2023-02-09 00:00:00', '2023-02-10 00:00:00', '2023-02-13 00:00:00',\n",
       " '2023-02-14 00:00:00', '2023-02-15 00:00:00', '2023-02-16 00:00:00',\n",
       " '2023-02-17 00:00:00']\n",
       "Length: 1244, dtype: datetime64[ns]"
      ]
     },
     "execution_count": 21,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "stock_daily.date.sort_values().unique()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 41,
   "id": "91b75454",
   "metadata": {},
   "outputs": [],
   "source": [
    "time_i=stock_daily.date.sort_values().unique()\n",
    "top_num=5\n",
    "\n",
    "stock_list=set([])\n",
    "buy_date={}\n",
    "sell_date={}\n",
    "postion=set([])\n",
    "\n",
    "for i in range(0,len(time_i),30):\n",
    "    stock_list_z=stock_daily[stock_daily.date==time_i[i]].sort_values(\"换手率(%)\").head(top_num)[\"股票代码\"].tolist()\n",
    "    stock_list=stock_list|set(stock_list_z)\n",
    "    buy_date.update({str(time_i[i].date()):stock_list_z})\n",
    "    sell_date.update({str(time_i[i].date()):list(postion-set(stock_list_z))})\n",
    "    postion=set(stock_list_z)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 28,
   "id": "f0d5b4b6",
   "metadata": {},
   "outputs": [],
   "source": [
    "#buy_date"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 45,
   "id": "ded9f01b",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "2018-01-02 2023-02-10\n",
      "初始资金: 1000000.00\n",
      "2018-01-03, 买入300684.SZ, 成交量11741，成交价16.86\n",
      "2018-01-03, 买入300735.SZ, 成交量11370，成交价17.41\n",
      "2018-01-03, 买入300174.SZ, 成交量1648，成交价108.66\n",
      "2018-01-03, 买入300042.SZ, 成交量2717，成交价66.31\n",
      "2018-01-03, 买入300448.SZ, 成交量3279，成交价54.91\n",
      "2018-02-14, 卖出300735.SZ, 成交量-11370，成交价18.47\n",
      "2018-02-14, 卖出300042.SZ, 成交量-2717，成交价48.32\n",
      "2018-02-14, 卖出300448.SZ, 成交量-3279，成交价44.49\n",
      "2018-02-14, 卖出300684.SZ, 成交量-11741，成交价39.98\n",
      "2018-02-14, 买入300110.SZ, 成交量4061，成交价48.27\n",
      "2018-02-14, 买入300174.SZ, 成交量355，成交价109.11\n",
      "2018-02-14, 买入300342.SZ, 成交量3981，成交价54.77\n",
      "2018-02-14, 买入300301.SZ, 成交量7183，成交价30.53\n",
      "2018-02-14, 买入300381.SZ, 成交量3444，成交价63.70\n",
      "2018-04-04, 卖出300110.SZ, 成交量-4061，成交价32.95\n",
      "2018-04-04, 卖出300381.SZ, 成交量-3444，成交价71.24\n",
      "2018-04-04, 卖出300174.SZ, 成交量-2003，成交价104.42\n",
      "2018-04-04, 卖出300342.SZ, 成交量-3981，成交价57.73\n",
      "2018-04-04, 卖出300301.SZ, 成交量-7183，成交价32.26\n",
      "2018-04-04, 买入300504.SZ, 成交量9283，成交价25.04\n",
      "2018-04-04, 买入300116.SZ, 成交量3797，成交价50.04\n",
      "2018-04-04, 买入300180.SZ, 成交量3592，成交价59.40\n",
      "2018-04-04, 买入300108.SZ, 成交量4150，成交价51.64\n",
      "2018-04-04, 买入300187.SZ, 成交量2441，成交价86.55\n",
      "2018-05-22, 卖出300116.SZ, 成交量-3797，成交价34.54\n",
      "2018-05-22, 卖出300108.SZ, 成交量-4150，成交价50.23\n",
      "2018-05-22, 卖出300504.SZ, 成交量-9283，成交价55.00\n",
      "2018-05-22, 卖出300187.SZ, 成交量-2441，成交价-1.00\n",
      "2018-05-22, 买入300454.SZ, 成交量3553，成交价63.39\n",
      "2018-05-22, 买入300032.SZ, 成交量5895，成交价31.27\n",
      "2018-05-22, 卖出300180.SZ, 成交量-150，成交价59.66\n",
      "2018-05-22, 买入300342.SZ, 成交量3607，成交价57.06\n",
      "2018-05-22, 买入300057.SZ, 成交量11551，成交价17.90\n",
      "2018-07-04, 卖出300032.SZ, 成交量-5895，成交价23.40\n",
      "2018-07-04, 卖出300454.SZ, 成交量-3553，成交价114.88\n",
      "2018-07-04, 卖出300057.SZ, 成交量-11551，成交价13.03\n",
      "2018-07-04, 卖出300180.SZ, 成交量-3442，成交价50.88\n",
      "2018-07-04, 卖出300342.SZ, 成交量-3607，成交价51.29\n",
      "2018-07-04, 买入300266.SZ, 成交量1049，成交价185.49\n",
      "2018-07-04, 买入300090.SZ, 成交量4406，成交价44.21\n",
      "2018-07-04, 买入300028.SZ, 成交量48189，成交价4.03\n",
      "2018-07-04, 买入300317.SZ, 成交量7316，成交价26.61\n",
      "2018-07-04, 买入300087.SZ, 成交量2606，成交价82.34\n",
      "2018-08-15, 卖出300090.SZ, 成交量-4406，成交价22.87\n",
      "2018-08-15, 卖出300317.SZ, 成交量-7316，成交价17.82\n",
      "2018-08-15, 卖出300266.SZ, 成交量-1049，成交价75.83\n",
      "2018-08-15, 卖出300028.SZ, 成交量-48189，成交价-1.00\n",
      "2018-08-15, 买入300724.SZ, 成交量4884，成交价27.14\n",
      "2018-08-15, 卖出300087.SZ, 成交量-1111，成交价81.28\n",
      "2018-08-15, 买入300204.SZ, 成交量1518，成交价79.95\n",
      "2018-08-15, 买入300125.SZ, 成交量2394，成交价50.33\n",
      "2018-08-15, 买入300243.SZ, 成交量3084，成交价39.22\n",
      "2018-09-27, 卖出300724.SZ, 成交量-4884，成交价26.30\n",
      "2018-09-27, 卖出300243.SZ, 成交量-3084，成交价39.97\n",
      "2018-09-27, 卖出300125.SZ, 成交量-2394，成交价46.51\n",
      "2018-09-27, 买入300749.SZ, 成交量6150，成交价21.30\n",
      "2018-09-27, 买入300748.SZ, 成交量12680，成交价10.33\n",
      "2018-09-27, 卖出300087.SZ, 成交量-51，成交价82.66\n",
      "2018-09-27, 买入300301.SZ, 成交量5369，成交价22.18\n",
      "2018-09-27, 卖出300204.SZ, 成交量-14，成交价75.15\n",
      "2018-11-15, 卖出300301.SZ, 成交量-5369，成交价22.23\n",
      "2018-11-15, 卖出300748.SZ, 成交量-12680，成交价28.45\n",
      "2018-11-15, 卖出300749.SZ, 成交量-6150，成交价27.52\n",
      "2018-11-15, 卖出300087.SZ, 成交量-1444，成交价-1.00\n",
      "2018-11-15, 买入300018.SZ, 成交量4680，成交价35.06\n",
      "2018-11-15, 买入300204.SZ, 成交量335，成交价80.92\n",
      "2018-11-15, 买入300176.SZ, 成交量972，成交价152.38\n",
      "2018-11-15, 买入300674.SZ, 成交量7702，成交价21.32\n",
      "2018-11-15, 买入300258.SZ, 成交量2750，成交价54.18\n",
      "2018-12-27, 卖出300674.SZ, 成交量-7702，成交价31.71\n",
      "2018-12-27, 卖出300018.SZ, 成交量-4680，成交价32.09\n",
      "2018-12-27, 卖出300176.SZ, 成交量-972，成交价170.86\n",
      "2018-12-27, 卖出300258.SZ, 成交量-2750，成交价53.62\n",
      "2018-12-27, 买入300233.SZ, 成交量5674，成交价28.57\n",
      "2018-12-27, 买入300204.SZ, 成交量114，成交价82.20\n",
      "2018-12-27, 买入300206.SZ, 成交量4372，成交价37.32\n",
      "2018-12-27, 买入300376.SZ, 成交量1639，成交价98.97\n",
      "2018-12-27, 买入300026.SZ, 成交量1090，成交价148.01\n",
      "2019-02-18, 卖出300206.SZ, 成交量-4372，成交价39.00\n",
      "2019-02-18, 卖出300026.SZ, 成交量-1090，成交价146.59\n",
      "2019-02-18, 卖出300376.SZ, 成交量-1639，成交价108.57\n",
      "2019-02-18, 买入300176.SZ, 成交量946，成交价176.47\n",
      "2019-02-18, 买入300204.SZ, 成交量122，成交价80.10\n",
      "2019-02-18, 买入300280.SZ, 成交量4843，成交价34.31\n",
      "2019-02-18, 买入300483.SZ, 成交量5344，成交价31.06\n",
      "2019-02-18, 卖出300233.SZ, 成交量-422，成交价31.68\n",
      "2019-04-01, 卖出300483.SZ, 成交量-5344，成交价34.94\n",
      "2019-04-01, 卖出300280.SZ, 成交量-4843，成交价31.17\n",
      "2019-04-01, 卖出300176.SZ, 成交量-946，成交价215.51\n",
      "2019-04-01, 卖出300233.SZ, 成交量-5252，成交价39.59\n",
      "2019-04-01, 买入300767.SZ, 成交量5612，成交价30.39\n",
      "2019-04-01, 买入300766.SZ, 成交量5622，成交价30.34\n",
      "2019-04-01, 买入300258.SZ, 成交量2751，成交价56.93\n",
      "2019-04-01, 卖出300204.SZ, 成交量-646，成交价109.65\n",
      "2019-04-01, 买入300363.SZ, 成交量3673，成交价42.78\n",
      "2019-05-17, 卖出300204.SZ, 成交量-1429，成交价113.55\n",
      "2019-05-17, 卖出300363.SZ, 成交量-3673，成交价33.01\n",
      "2019-05-17, 卖出300766.SZ, 成交量-5622，成交价53.22\n",
      "2019-05-17, 卖出300767.SZ, 成交量-5612，成交价39.44\n",
      "2019-05-17, 买入300777.SZ, 成交量24993，成交价9.60\n",
      "2019-05-17, 买入300258.SZ, 成交量1213，成交价55.43\n",
      "2019-05-17, 买入300233.SZ, 成交量5628，成交价38.76\n",
      "2019-05-17, 买入300257.SZ, 成交量2987，成交价72.71\n",
      "2019-05-17, 买入300286.SZ, 成交量3260，成交价66.85\n",
      "2019-07-01, 卖出300257.SZ, 成交量-2987，成交价73.39\n",
      "2019-07-01, 卖出300233.SZ, 成交量-5628，成交价41.21\n",
      "2019-07-01, 卖出300286.SZ, 成交量-3260，成交价63.95\n",
      "2019-07-01, 卖出300777.SZ, 成交量-24993，成交价37.22\n",
      "2019-07-01, 卖出300258.SZ, 成交量-3964，成交价53.00\n",
      "2019-07-01, 买入300454.SZ, 成交量3837，成交价89.52\n",
      "2019-07-01, 买入300363.SZ, 成交量10529，成交价32.27\n",
      "2019-07-01, 买入300381.SZ, 成交量5979，成交价56.98\n",
      "2019-07-01, 买入300318.SZ, 成交量12616，成交价26.94\n",
      "2019-07-01, 买入300376.SZ, 成交量2987，成交价114.74\n",
      "2019-08-12, 卖出300363.SZ, 成交量-10529，成交价47.02\n",
      "2019-08-12, 卖出300381.SZ, 成交量-5979，成交价63.48\n",
      "2019-08-12, 卖出300376.SZ, 成交量-2987，成交价100.09\n",
      "2019-08-12, 卖出300454.SZ, 成交量-3837，成交价94.89\n",
      "2019-08-12, 买入300318.SZ, 成交量2352，成交价24.49\n",
      "2019-08-12, 买入300440.SZ, 成交量12635，成交价28.81\n",
      "2019-08-12, 买入300233.SZ, 成交量9032，成交价40.75\n",
      "2019-08-12, 买入300258.SZ, 成交量7635，成交价45.58\n",
      "2019-08-12, 买入300204.SZ, 成交量4487，成交价81.64\n",
      "2019-09-24, 卖出300204.SZ, 成交量-4487，成交价101.48\n",
      "2019-09-24, 卖出300440.SZ, 成交量-12635，成交价29.97\n",
      "2019-09-24, 卖出300233.SZ, 成交量-9032，成交价45.49\n",
      "2019-09-24, 卖出300258.SZ, 成交量-7635，成交价51.66\n",
      "2019-09-24, 买入300790.SZ, 成交量13997，成交价31.65\n",
      "2019-09-24, 买入300318.SZ, 成交量812，成交价25.65\n",
      "2019-09-24, 买入300257.SZ, 成交量6099，成交价66.34\n",
      "2019-09-24, 买入300376.SZ, 成交量3700，成交价109.04\n",
      "2019-09-24, 买入300087.SZ, 成交量6221，成交价64.97\n",
      "2019-11-12, 卖出300790.SZ, 成交量-13997，成交价51.20\n",
      "2019-11-12, 卖出300257.SZ, 成交量-6099，成交价67.63\n",
      "2019-11-12, 卖出300087.SZ, 成交量-6221，成交价64.81\n",
      "2019-11-12, 买入300376.SZ, 成交量970，成交价94.81\n",
      "2019-11-12, 买入300305.SZ, 成交量13566，成交价32.76\n",
      "2019-11-12, 买入300204.SZ, 成交量5259，成交价84.38\n",
      "2019-11-12, 买入300318.SZ, 成交量1483，成交价25.84\n",
      "2019-11-12, 买入300387.SZ, 成交量11725，成交价38.20\n",
      "2019-12-24, 卖出300387.SZ, 成交量-11725，成交价39.13\n",
      "2019-12-24, 卖出300376.SZ, 成交量-4670，成交价112.48\n",
      "2019-12-24, 买入300807.SZ, 成交量14816，成交价33.89\n",
      "2019-12-24, 买入300318.SZ, 成交量490，成交价25.71\n",
      "2019-12-24, 买入300233.SZ, 成交量10816，成交价42.33\n",
      "2019-12-24, 买入300204.SZ, 成交量47，成交价87.12\n",
      "2019-12-24, 买入300305.SZ, 成交量802，成交价32.15\n",
      "2020-02-13, 卖出300233.SZ, 成交量-10816，成交价42.46\n",
      "2020-02-13, 卖出300204.SZ, 成交量-5306，成交价120.77\n",
      "2020-02-13, 卖出300318.SZ, 成交量-17753，成交价30.67\n",
      "2020-02-13, 卖出300807.SZ, 成交量-14816，成交价46.20\n",
      "2020-02-13, 卖出300305.SZ, 成交量-14368，成交价30.28\n",
      "2020-02-13, 买入300816.SZ, 成交量15185，成交价38.86\n",
      "2020-02-13, 买入300526.SZ, 成交量4293，成交价125.67\n",
      "2020-02-13, 买入300724.SZ, 成交量8099，成交价72.85\n",
      "2020-02-13, 买入300257.SZ, 成交量8523，成交价62.95\n",
      "2020-02-13, 买入300219.SZ, 成交量14339，成交价37.36\n",
      "2020-03-26, 卖出300724.SZ, 成交量-8099，成交价52.40\n",
      "2020-03-26, 卖出300816.SZ, 成交量-15185，成交价39.15\n",
      "2020-03-26, 买入300823.SZ, 成交量17323，成交价38.47\n",
      "2020-03-26, 卖出300526.SZ, 成交量-1856，成交价272.29\n",
      "2020-03-26, 买入300257.SZ, 成交量1199，成交价61.66\n",
      "2020-03-26, 买入300219.SZ, 成交量657，成交价40.13\n",
      "2020-03-26, 买入300616.SZ, 成交量4983，成交价119.87\n",
      "2020-05-13, 卖出300219.SZ, 成交量-14996，成交价47.63\n",
      "2020-05-13, 卖出300616.SZ, 成交量-4983，成交价117.28\n",
      "2020-05-13, 卖出300257.SZ, 成交量-9722，成交价69.42\n",
      "2020-05-13, 卖出300823.SZ, 成交量-17323，成交价36.97\n",
      "2020-05-13, 买入300831.SZ, 成交量80656，成交价8.38\n",
      "2020-05-13, 买入300512.SZ, 成交量27402，成交价22.36\n",
      "2020-05-13, 买入300258.SZ, 成交量13719，成交价44.76\n",
      "2020-05-13, 买入300832.SZ, 成交量13597，成交价49.72\n",
      "2020-05-13, 买入300526.SZ, 成交量438，成交价214.23\n",
      "2020-06-24, 卖出300831.SZ, 成交量-80656，成交价22.88\n",
      "2020-06-24, 卖出300258.SZ, 成交量-13719，成交价48.28\n",
      "2020-06-24, 卖出300832.SZ, 成交量-13597，成交价168.00\n",
      "2020-06-24, 卖出300526.SZ, 成交量-2875，成交价257.41\n",
      "2020-06-24, 卖出300512.SZ, 成交量-27402，成交价25.62\n",
      "2020-06-24, 买入300028.SZ, 成交量967857，成交价1.09\n",
      "2020-06-24, 买入300824.SZ, 成交量113370，成交价11.33\n",
      "2020-06-24, 买入300104.SZ, 成交量77131，成交价13.73\n",
      "2020-06-24, 买入300842.SZ, 成交量38173，成交价33.65\n",
      "2020-06-24, 买入300841.SZ, 成交量7155，成交价179.52\n",
      "2020-08-07, 卖出300824.SZ, 成交量-113370，成交价32.60\n",
      "2020-08-07, 卖出300841.SZ, 成交量-7155，成交价800.00\n",
      "2020-08-07, 卖出300842.SZ, 成交量-38173，成交价85.65\n",
      "2020-08-07, 卖出300104.SZ, 成交量-77131，成交价-1.00\n",
      "2020-08-07, 卖出300028.SZ, 成交量-967857，成交价-1.00\n",
      "2020-08-07, 买入300216.SZ, 成交量133869，成交价14.88\n",
      "2020-08-07, 买入300857.SZ, 成交量77139，成交价31.57\n",
      "2020-08-07, 买入300855.SZ, 成交量56433，成交价43.15\n",
      "2020-08-07, 买入300859.SZ, 成交量213903，成交价11.39\n",
      "2020-08-07, 买入300526.SZ, 成交量11244，成交价195.96\n",
      "2020-09-18, 卖出300216.SZ, 成交量-133869，成交价-1.00\n",
      "2020-09-18, 卖出300859.SZ, 成交量-213903，成交价39.40\n",
      "2020-09-18, 卖出300857.SZ, 成交量-77139，成交价36.53\n",
      "2020-09-18, 卖出300526.SZ, 成交量-11244，成交价225.93\n",
      "2020-09-18, 卖出300855.SZ, 成交量-56433，成交价42.50\n",
      "2020-09-18, 买入300486.SZ, 成交量105540，成交价28.80\n",
      "2020-09-18, 买入003816.SZ, 成交量1021802，成交价3.00\n",
      "2020-09-18, 买入300204.SZ, 成交量34386，成交价89.09\n",
      "2020-09-18, 买入300463.SZ, 成交量20594，成交价150.48\n",
      "2020-09-18, 买入300413.SZ, 成交量27324，成交价111.67\n",
      "2020-11-09, 卖出300204.SZ, 成交量-34386，成交价79.36\n",
      "2020-11-09, 卖出003816.SZ, 成交量-1021802，成交价2.79\n",
      "2020-11-09, 卖出300463.SZ, 成交量-20594，成交价149.04\n",
      "2020-11-09, 卖出300413.SZ, 成交量-27324，成交价136.60\n",
      "2020-11-09, 买入300486.SZ, 成交量10163，成交价25.25\n",
      "2020-11-09, 买入300530.SZ, 成交量32268，成交价90.86\n",
      "2020-11-09, 买入300550.SZ, 成交量65835，成交价44.54\n",
      "2020-11-09, 买入300483.SZ, 成交量80013，成交价36.66\n",
      "2020-11-09, 买入300219.SZ, 成交量56738，成交价52.00\n",
      "2020-12-21, 卖出300219.SZ, 成交量-56738，成交价61.74\n",
      "2020-12-21, 卖出300486.SZ, 成交量-115703，成交价23.07\n",
      "2020-12-21, 卖出300483.SZ, 成交量-80013，成交价38.55\n",
      "2020-12-21, 卖出300530.SZ, 成交量-32268，成交价82.30\n",
      "2020-12-21, 买入300695.SZ, 成交量44339，成交价64.86\n",
      "2020-12-21, 买入300550.SZ, 成交量10111，成交价37.66\n",
      "2020-12-21, 买入300523.SZ, 成交量32027，成交价89.81\n",
      "2020-12-21, 买入300388.SZ, 成交量55203，成交价51.92\n",
      "2020-12-21, 买入300251.SZ, 成交量9048，成交价316.75\n",
      "2021-02-02, 卖出300523.SZ, 成交量-32027，成交价71.47\n",
      "2021-02-02, 卖出300550.SZ, 成交量-75946，成交价37.56\n",
      "2021-02-02, 卖出300388.SZ, 成交量-55203，成交价46.46\n",
      "2021-02-02, 卖出300251.SZ, 成交量-9048，成交价348.48\n",
      "2021-02-02, 买入300204.SZ, 成交量42360，成交价64.85\n",
      "2021-02-02, 卖出300695.SZ, 成交量-672，成交价62.90\n",
      "2021-02-02, 买入300332.SZ, 成交量301133，成交价9.16\n",
      "2021-02-02, 买入003036.SZ, 成交量275548，成交价10.97\n",
      "2021-02-02, 买入300521.SZ, 成交量90315，成交价30.33\n",
      "2021-03-23, 卖出300332.SZ, 成交量-301133，成交价10.96\n",
      "2021-03-23, 卖出300521.SZ, 成交量-90315，成交价29.38\n",
      "2021-03-23, 卖出003036.SZ, 成交量-275548，成交价12.45\n",
      "2021-03-23, 买入300550.SZ, 成交量87380，成交价33.58\n",
      "2021-03-23, 买入300486.SZ, 成交量124697，成交价23.00\n",
      "2021-03-23, 买入300174.SZ, 成交量48547，成交价59.42\n",
      "2021-03-23, 买入300695.SZ, 成交量3318，成交价61.63\n",
      "2021-03-23, 买入300204.SZ, 成交量3371，成交价63.28\n",
      "2021-05-10, 卖出300204.SZ, 成交量-45731，成交价63.76\n",
      "2021-05-10, 卖出300174.SZ, 成交量-48547，成交价58.06\n",
      "2021-05-10, 卖出300550.SZ, 成交量-87380，成交价35.61\n",
      "2021-05-10, 买入300695.SZ, 成交量3645，成交价55.42\n",
      "2021-05-10, 买入300257.SZ, 成交量30591，成交价91.53\n",
      "2021-05-10, 买入300069.SZ, 成交量107336，成交价26.14\n",
      "2021-05-10, 买入300486.SZ, 成交量1382，成交价22.57\n",
      "2021-05-10, 买入300371.SZ, 成交量62722，成交价45.00\n",
      "2021-06-22, 卖出300486.SZ, 成交量-126079，成交价27.79\n",
      "2021-06-22, 卖出300069.SZ, 成交量-107336，成交价41.15\n",
      "2021-06-22, 卖出300371.SZ, 成交量-62722，成交价51.86\n",
      "2021-06-22, 买入300695.SZ, 成交量8012，成交价55.73\n",
      "2021-06-22, 买入300662.SZ, 成交量54121，成交价60.20\n",
      "2021-06-22, 买入300214.SZ, 成交量142580，成交价22.85\n",
      "2021-06-22, 买入300257.SZ, 成交量7323，成交价85.94\n",
      "2021-06-22, 买入300174.SZ, 成交量56636，成交价57.95\n",
      "2021-08-03, 卖出300174.SZ, 成交量-56636，成交价59.25\n",
      "2021-08-03, 卖出300695.SZ, 成交量-58642，成交价53.19\n",
      "2021-08-03, 卖出300662.SZ, 成交量-54121，成交价55.12\n",
      "2021-08-03, 买入300388.SZ, 成交量79494，成交价40.76\n",
      "2021-08-03, 卖出300214.SZ, 成交量-400，成交价22.75\n",
      "2021-08-03, 卖出300257.SZ, 成交量-2739，成交价92.11\n",
      "2021-08-03, 买入300616.SZ, 成交量25554，成交价126.01\n",
      "2021-08-03, 买入300392.SZ, 成交量69262，成交价46.41\n",
      "2021-09-14, 卖出300257.SZ, 成交量-35175，成交价106.30\n",
      "2021-09-14, 卖出300388.SZ, 成交量-79494，成交价46.19\n",
      "2021-09-14, 卖出300392.SZ, 成交量-69262，成交价45.45\n",
      "2021-09-14, 卖出300616.SZ, 成交量-25554，成交价92.26\n",
      "2021-09-14, 卖出300214.SZ, 成交量-142180，成交价26.89\n",
      "2021-09-14, 买入300475.SZ, 成交量85061，成交价39.70\n",
      "2021-09-14, 买入300396.SZ, 成交量37982，成交价88.67\n",
      "2021-09-14, 买入300298.SZ, 成交量20909，成交价160.48\n",
      "2021-09-14, 买入300492.SZ, 成交量37868，成交价87.89\n",
      "2021-09-14, 买入300628.SZ, 成交量3315，成交价1018.97\n",
      "2021-11-04, 卖出300298.SZ, 成交量-20909，成交价149.36\n",
      "2021-11-04, 卖出300492.SZ, 成交量-37868，成交价90.51\n",
      "2021-11-04, 卖出300396.SZ, 成交量-37982，成交价80.02\n",
      "2021-11-04, 卖出300628.SZ, 成交量-3315，成交价969.70\n",
      "2021-11-04, 卖出300475.SZ, 成交量-85061，成交价47.60\n",
      "2021-11-04, 买入300741.SZ, 成交量65420，成交价51.62\n",
      "2021-11-04, 买入300695.SZ, 成交量60997，成交价54.59\n",
      "2021-11-04, 买入300442.SZ, 成交量85523，成交价39.86\n",
      "2021-11-04, 买入300523.SZ, 成交量58832，成交价56.35\n",
      "2021-11-04, 买入300434.SZ, 成交量104763，成交价31.78\n",
      "2021-12-16, 卖出300434.SZ, 成交量-104763，成交价35.06\n",
      "2021-12-16, 卖出300442.SZ, 成交量-85523，成交价42.14\n",
      "2021-12-16, 卖出300523.SZ, 成交量-58832，成交价63.25\n",
      "2021-12-16, 卖出300741.SZ, 成交量-65420，成交价62.26\n",
      "2021-12-16, 卖出300695.SZ, 成交量-60997，成交价64.73\n",
      "2021-12-16, 买入300257.SZ, 成交量37491，成交价99.56\n",
      "2021-12-16, 买入300475.SZ, 成交量74020，成交价50.47\n",
      "2021-12-16, 买入300285.SZ, 成交量7051，成交价530.11\n",
      "2021-12-16, 买入300760.SZ, 成交量10226，成交价365.46\n",
      "2021-12-16, 买入300627.SZ, 成交量30884，成交价121.07\n",
      "2022-01-28, 卖出300627.SZ, 成交量-30884，成交价112.69\n",
      "2022-01-28, 卖出300285.SZ, 成交量-7051，成交价520.08\n",
      "2022-01-28, 卖出300257.SZ, 成交量-37491，成交价100.65\n",
      "2022-01-28, 卖出300475.SZ, 成交量-4377，成交价51.03\n",
      "2022-01-28, 买入300760.SZ, 成交量585，成交价331.88\n",
      "2022-01-28, 买入300695.SZ, 成交量59873，成交价59.84\n",
      "2022-01-28, 买入300492.SZ, 成交量55727，成交价64.39\n",
      "2022-01-28, 买入300628.SZ, 成交量3568，成交价1013.69\n",
      "2022-03-18, 卖出300628.SZ, 成交量-3568，成交价976.74\n",
      "2022-03-18, 卖出300760.SZ, 成交量-10811，成交价323.51\n",
      "2022-03-18, 卖出300492.SZ, 成交量-2077，成交价64.44\n",
      "2022-03-18, 买入300278.SZ, 成交量207508，成交价16.34\n",
      "2022-03-18, 买入300475.SZ, 成交量8387，成交价43.58\n",
      "2022-03-18, 买入300530.SZ, 成交量50671，成交价67.40\n",
      "2022-03-18, 买入300695.SZ, 成交量3000，成交价53.83\n",
      "2022-05-06, 卖出300475.SZ, 成交量-78030，成交价42.46\n",
      "2022-05-06, 卖出300530.SZ, 成交量-50671，成交价62.92\n",
      "2022-05-06, 买入300392.SZ, 成交量168535，成交价15.71\n",
      "2022-05-06, 买入300492.SZ, 成交量3200，成交价59.60\n",
      "2022-05-06, 卖出300278.SZ, 成交量-16377，成交价17.13\n",
      "2022-05-06, 买入300695.SZ, 成交量2227，成交价50.07\n",
      "2022-05-06, 买入300338.SZ, 成交量262160，成交价10.11\n",
      "2022-06-20, 卖出300338.SZ, 成交量-262160，成交价12.40\n",
      "2022-06-20, 卖出300278.SZ, 成交量-191131，成交价21.06\n",
      "2022-06-20, 卖出300392.SZ, 成交量-168535，成交价17.34\n",
      "2022-06-20, 卖出300492.SZ, 成交量-279，成交价64.97\n",
      "2022-06-20, 买入300475.SZ, 成交量93761，成交价39.55\n",
      "2022-06-20, 买入300257.SZ, 成交量40146，成交价92.36\n",
      "2022-06-20, 买入300695.SZ, 成交量875，成交价56.08\n",
      "2022-06-20, 买入300530.SZ, 成交量51350，成交价72.21\n",
      "2022-08-01, 卖出300695.SZ, 成交量-65975，成交价61.07\n",
      "2022-08-01, 卖出300475.SZ, 成交量-93761，成交价46.47\n",
      "2022-08-01, 卖出300530.SZ, 成交量-51350，成交价64.99\n",
      "2022-08-01, 买入300492.SZ, 成交量2906，成交价64.05\n",
      "2022-08-01, 买入300285.SZ, 成交量9666，成交价395.96\n",
      "2022-08-01, 买入300628.SZ, 成交量3969，成交价960.78\n",
      "2022-08-01, 卖出300257.SZ, 成交量-1238，成交价97.69\n",
      "2022-08-01, 买入300388.SZ, 成交量94508，成交价41.03\n",
      "2022-09-13, 卖出300628.SZ, 成交量-3969，成交价913.12\n",
      "2022-09-13, 卖出300285.SZ, 成交量-9666，成交价392.85\n",
      "2022-09-13, 卖出300388.SZ, 成交量-94508，成交价41.50\n",
      "2022-09-13, 卖出300257.SZ, 成交量-38908，成交价129.10\n",
      "2022-09-13, 买入300741.SZ, 成交量126306，成交价31.71\n",
      "2022-09-13, 买入003816.SZ, 成交量1270002，成交价3.15\n",
      "2022-09-13, 买入430047.BJ, 成交量848，成交价4722.10\n",
      "2022-09-13, 买入300492.SZ, 成交量2859，成交价64.26\n",
      "2022-09-13, 买入300255.SZ, 成交量87157，成交价46.27\n",
      "2022-11-01, 卖出300255.SZ, 成交量-87157，成交价45.95\n",
      "2022-11-01, 卖出300741.SZ, 成交量-126306，成交价30.17\n",
      "2022-11-01, 买入300492.SZ, 成交量1563，成交价60.42\n",
      "2022-11-01, 买入003816.SZ, 成交量58912，成交价2.86\n",
      "2022-11-01, 卖出430047.BJ, 成交量-25，成交价4613.70\n",
      "2022-11-01, 买入300103.SZ, 成交量114538，成交价33.51\n",
      "2022-11-01, 买入300475.SZ, 成交量102669，成交价37.44\n",
      "2022-12-13, 卖出300103.SZ, 成交量-114538，成交价33.61\n",
      "2022-12-13, 卖出300475.SZ, 成交量-102669，成交价41.25\n",
      "2022-12-13, 买入300492.SZ, 成交量3402，成交价61.60\n",
      "2022-12-13, 买入003816.SZ, 成交量63179，成交价2.97\n",
      "2022-12-13, 买入300695.SZ, 成交量84117，成交价49.13\n",
      "2022-12-13, 卖出430047.BJ, 成交量-129，成交价5962.25\n",
      "2022-12-13, 买入300627.SZ, 成交量34654，成交价119.05\n",
      "2023-02-01, 卖出300627.SZ, 成交量-34654，成交价124.85\n",
      "2023-02-01, 卖出300695.SZ, 成交量-84117，成交价50.35\n",
      "2023-02-01, 卖出300492.SZ, 成交量-67301，成交价85.81\n",
      "2023-02-01, 卖出430047.BJ, 成交量-694，成交价6447.90\n",
      "2023-02-01, 买入003816.SZ, 成交量152140，成交价2.95\n",
      "2023-02-01, 买入300475.SZ, 成交量112863，成交价40.34\n",
      "2023-02-01, 买入300005.SZ, 成交量50335，成交价90.65\n",
      "2023-02-01, 买入300741.SZ, 成交量143634，成交价31.68\n",
      "2023-02-01, 买入300388.SZ, 成交量121217，成交价37.66\n",
      "最终资金: 21055739.85\n",
      "夏普比率: OrderedDict([('sharperatio', 0.6867262506150678)])\n",
      "回撤指标: AutoOrderedDict([('len', 13), ('drawdown', 18.31740783626657), ('moneydown', 4721771.969854008), ('max', AutoOrderedDict([('len', 322), ('drawdown', 59.22295035835388), ('moneydown', 6899852.569166392)]))])\n"
     ]
    }
   ],
   "source": [
    "start=datetime(2018,1,2)\n",
    "end=datetime(2023,2,10)\n",
    "stock_daily_part=stock_daily[(stock_daily[\"date\"]>=start)&(stock_daily[\"date\"]<=end)].copy()\n",
    "result=huice_run_num(start,end,buy_date,sell_date,stock_daily_part,stock_list,my_strategy_date_2)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 43,
   "id": "e3e5263d",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<Axes: xlabel='日期'>"
      ]
     },
     "execution_count": 43,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 1800x400 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "index_time_scale=index_time/index_time.iloc[0]\n",
    "index_time_scale.plot(figsize=(18,4))\n",
    "cash_value=pd.Series(result)/1000000\n",
    "cash_value.plot()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "id": "e27aa166",
   "metadata": {},
   "outputs": [],
   "source": [
    "    # stock_chi=stock_daily[(stock_daily[\"date\"]==i)&(stock_daily[\"open\"]!=stock_daily[\"close\"])][\"股票代码\"].tolist()\n",
    "    # buy_list=stock_daily[(stock_daily[\"date\"]==time0)&stock_daily[\"股票代码\"].isin(stock_chi)].sort_values(by=\"总市值(万元)\").head(top_n)[\"股票代码\"].tolist()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 73,
   "id": "7b6ad558",
   "metadata": {},
   "outputs": [],
   "source": [
    "time_index=pd.Series(stock_daily.date.unique()).sort_values().tolist()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 18,
   "id": "5f7d751e",
   "metadata": {},
   "outputs": [],
   "source": [
    "#help(stock_daily.head)"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "1f7e35ae",
   "metadata": {},
   "source": [
    "## 换手率因子与规避涨停与停牌"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 51,
   "id": "418f82fd",
   "metadata": {},
   "outputs": [],
   "source": [
    "time_i=stock_daily.date.sort_values().unique()\n",
    "top_num=5\n",
    "\n",
    "stock_list=set([])\n",
    "buy_date={}\n",
    "sell_date={}\n",
    "postion=set([])\n",
    "\n",
    "for i in range(0,len(time_i),30):\n",
    "    stock_chi=stock_daily[(stock_daily.date==time_i[i+1])&(stock_daily.open!=stock_daily.close)][\"股票代码\"].tolist()\n",
    "    stock_list_z=stock_daily[(stock_daily.date==time_i[i])&stock_daily[\"股票代码\"].isin(stock_chi)].sort_values(\"换手率(%)\").head(top_num)[\"股票代码\"].tolist()\n",
    "    stock_list=stock_list|set(stock_list_z)\n",
    "    buy_date.update({str(time_i[i].date()):stock_list_z})\n",
    "    sell_date.update({str(time_i[i].date()):list(postion-set(stock_list_z))})\n",
    "    postion=set(stock_list_z)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 52,
   "id": "4da52ba6",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "2018-01-02 2023-02-10\n",
      "初始资金: 1000000.00\n",
      "2018-01-03, 买入300174.SZ, 成交量1648，成交价108.66\n",
      "2018-01-03, 买入300042.SZ, 成交量2717，成交价66.31\n",
      "2018-01-03, 买入300448.SZ, 成交量3279，成交价54.91\n",
      "2018-01-03, 买入300138.SZ, 成交量4029，成交价44.67\n",
      "2018-01-03, 买入300178.SZ, 成交量2985，成交价60.47\n",
      "2018-02-14, 卖出300178.SZ, 成交量-2985，成交价57.71\n",
      "2018-02-14, 卖出300138.SZ, 成交量-4029，成交价38.11\n",
      "2018-02-14, 卖出300042.SZ, 成交量-2717，成交价48.32\n",
      "2018-02-14, 卖出300448.SZ, 成交量-3279，成交价44.49\n",
      "2018-02-14, 卖出300174.SZ, 成交量-167，成交价109.11\n",
      "2018-02-14, 买入300342.SZ, 成交量2942，成交价54.77\n",
      "2018-02-14, 买入300301.SZ, 成交量5308，成交价30.53\n",
      "2018-02-14, 买入300381.SZ, 成交量2545，成交价63.70\n",
      "2018-02-14, 买入300187.SZ, 成交量1748，成交价91.65\n",
      "2018-04-04, 卖出300381.SZ, 成交量-2545，成交价71.24\n",
      "2018-04-04, 卖出300301.SZ, 成交量-5308，成交价32.26\n",
      "2018-04-04, 卖出300174.SZ, 成交量-1481，成交价104.42\n",
      "2018-04-04, 卖出300342.SZ, 成交量-2942，成交价57.73\n",
      "2018-04-04, 买入300180.SZ, 成交量2757，成交价59.40\n",
      "2018-04-04, 买入300108.SZ, 成交量3185，成交价51.64\n",
      "2018-04-04, 买入300187.SZ, 成交量125，成交价86.55\n",
      "2018-04-04, 买入300125.SZ, 成交量3152，成交价51.52\n",
      "2018-04-04, 买入300132.SZ, 成交量3616，成交价44.96\n",
      "2018-05-22, 卖出300132.SZ, 成交量-3616，成交价74.64\n",
      "2018-05-22, 卖出300187.SZ, 成交量-1873，成交价76.40\n",
      "2018-05-22, 卖出300125.SZ, 成交量-3152，成交价59.63\n",
      "2018-05-22, 买入300180.SZ, 成交量304，成交价59.66\n",
      "2018-05-22, 买入300342.SZ, 成交量3209，成交价57.06\n",
      "2018-05-22, 买入300057.SZ, 成交量10276，成交价17.90\n",
      "2018-05-22, 买入300108.SZ, 成交量432，成交价50.23\n",
      "2018-05-22, 买入300087.SZ, 成交量2113，成交价86.35\n",
      "2018-07-04, 卖出300108.SZ, 成交量-3617，成交价43.12\n",
      "2018-07-04, 卖出300180.SZ, 成交量-3061，成交价50.88\n",
      "2018-07-04, 卖出300057.SZ, 成交量-10276，成交价13.03\n",
      "2018-07-04, 卖出300342.SZ, 成交量-3209，成交价51.29\n",
      "2018-07-04, 卖出300087.SZ, 成交量-208，成交价82.34\n",
      "2018-07-04, 买入300196.SZ, 成交量4667，成交价33.82\n",
      "2018-07-04, 买入300125.SZ, 成交量3198，成交价48.59\n",
      "2018-07-04, 买入300218.SZ, 成交量11123，成交价14.23\n",
      "2018-07-04, 买入300301.SZ, 成交量6191，成交价25.52\n",
      "2018-08-15, 卖出300218.SZ, 成交量-11123，成交价14.52\n",
      "2018-08-15, 卖出300301.SZ, 成交量-6191，成交价24.46\n",
      "2018-08-15, 卖出300196.SZ, 成交量-4667，成交价36.94\n",
      "2018-08-15, 买入300087.SZ, 成交量70，成交价81.28\n",
      "2018-08-15, 买入300204.SZ, 成交量2007，成交价79.95\n",
      "2018-08-15, 卖出300125.SZ, 成交量-32，成交价50.33\n",
      "2018-08-15, 买入300243.SZ, 成交量4078，成交价39.22\n",
      "2018-08-15, 买入300258.SZ, 成交量2808，成交价56.67\n",
      "2018-09-27, 卖出300243.SZ, 成交量-4078，成交价39.97\n",
      "2018-09-27, 卖出300125.SZ, 成交量-3166，成交价46.51\n",
      "2018-09-27, 卖出300258.SZ, 成交量-2808，成交价57.44\n",
      "2018-09-27, 卖出300087.SZ, 成交量-62，成交价82.66\n",
      "2018-09-27, 买入300301.SZ, 成交量7114，成交价22.18\n",
      "2018-09-27, 卖出300204.SZ, 成交量-14，成交价75.15\n",
      "2018-09-27, 买入300518.SZ, 成交量3262，成交价48.35\n",
      "2018-09-27, 买入300294.SZ, 成交量1140，成交价137.70\n",
      "2018-11-15, 卖出300518.SZ, 成交量-3262，成交价28.71\n",
      "2018-11-15, 卖出300294.SZ, 成交量-1140，成交价152.13\n",
      "2018-11-15, 卖出300301.SZ, 成交量-7114，成交价22.23\n",
      "2018-11-15, 卖出300087.SZ, 成交量-1913，成交价87.29\n",
      "2018-11-15, 卖出300204.SZ, 成交量-137，成交价80.92\n",
      "2018-11-15, 买入300176.SZ, 成交量980，成交价152.38\n",
      "2018-11-15, 买入300258.SZ, 成交量2775，成交价54.18\n",
      "2018-11-15, 买入300498.SZ, 成交量3881，成交价38.78\n",
      "2018-11-15, 买入300572.SZ, 成交量1846，成交价81.56\n",
      "2018-12-27, 卖出300176.SZ, 成交量-980，成交价170.86\n",
      "2018-12-27, 卖出300258.SZ, 成交量-2775，成交价53.62\n",
      "2018-12-27, 卖出300572.SZ, 成交量-1846，成交价78.56\n",
      "2018-12-27, 卖出300498.SZ, 成交量-3881，成交价40.99\n",
      "2018-12-27, 买入300233.SZ, 成交量5456，成交价28.57\n",
      "2018-12-27, 买入300204.SZ, 成交量22，成交价82.20\n",
      "2018-12-27, 买入300206.SZ, 成交量4204，成交价37.32\n",
      "2018-12-27, 买入300376.SZ, 成交量1576，成交价98.97\n",
      "2018-12-27, 买入300026.SZ, 成交量1048，成交价148.01\n",
      "2019-02-18, 卖出300206.SZ, 成交量-4204，成交价39.00\n",
      "2019-02-18, 卖出300026.SZ, 成交量-1048，成交价146.59\n",
      "2019-02-18, 卖出300376.SZ, 成交量-1576，成交价108.57\n",
      "2019-02-18, 买入300176.SZ, 成交量914，成交价176.47\n",
      "2019-02-18, 买入300204.SZ, 成交量126，成交价80.10\n",
      "2019-02-18, 买入300280.SZ, 成交量4678，成交价34.31\n",
      "2019-02-18, 买入300483.SZ, 成交量5163，成交价31.06\n",
      "2019-02-18, 卖出300233.SZ, 成交量-383，成交价31.68\n",
      "2019-04-01, 卖出300483.SZ, 成交量-5163，成交价34.94\n",
      "2019-04-01, 卖出300280.SZ, 成交量-4678，成交价31.17\n",
      "2019-04-01, 卖出300176.SZ, 成交量-914，成交价215.51\n",
      "2019-04-01, 卖出300233.SZ, 成交量-5073，成交价39.59\n",
      "2019-04-01, 买入300258.SZ, 成交量3289，成交价56.93\n",
      "2019-04-01, 卖出300204.SZ, 成交量-295，成交价109.65\n",
      "2019-04-01, 买入300363.SZ, 成交量4392，成交价42.78\n",
      "2019-04-01, 买入300180.SZ, 成交量2821，成交价66.00\n",
      "2019-04-01, 买入300257.SZ, 成交量2069，成交价89.66\n",
      "2019-05-17, 卖出300204.SZ, 成交量-1709，成交价113.55\n",
      "2019-05-17, 卖出300363.SZ, 成交量-4392，成交价33.01\n",
      "2019-05-17, 卖出300180.SZ, 成交量-2821，成交价62.64\n",
      "2019-05-17, 卖出300258.SZ, 成交量-203，成交价55.43\n",
      "2019-05-17, 买入300233.SZ, 成交量4381，成交价38.76\n",
      "2019-05-17, 买入300257.SZ, 成交量256，成交价72.71\n",
      "2019-05-17, 买入300286.SZ, 成交量2538，成交价66.85\n",
      "2019-05-17, 买入300294.SZ, 成交量1197，成交价141.91\n",
      "2019-07-01, 卖出300294.SZ, 成交量-1197，成交价130.49\n",
      "2019-07-01, 卖出300233.SZ, 成交量-4381，成交价41.21\n",
      "2019-07-01, 卖出300257.SZ, 成交量-2325，成交价73.39\n",
      "2019-07-01, 卖出300286.SZ, 成交量-2538，成交价63.95\n",
      "2019-07-01, 卖出300258.SZ, 成交量-3086，成交价53.00\n",
      "2019-07-01, 买入300454.SZ, 成交量1873，成交价89.52\n",
      "2019-07-01, 买入300363.SZ, 成交量5141，成交价32.27\n",
      "2019-07-01, 买入300381.SZ, 成交量2919，成交价56.98\n",
      "2019-07-01, 买入300318.SZ, 成交量6160，成交价26.94\n",
      "2019-07-01, 买入300376.SZ, 成交量1458，成交价114.74\n",
      "2019-08-12, 卖出300363.SZ, 成交量-5141，成交价47.02\n",
      "2019-08-12, 卖出300381.SZ, 成交量-2919，成交价63.48\n",
      "2019-08-12, 卖出300376.SZ, 成交量-1458，成交价100.09\n",
      "2019-08-12, 卖出300454.SZ, 成交量-1873，成交价94.89\n",
      "2019-08-12, 买入300318.SZ, 成交量1151，成交价24.49\n",
      "2019-08-12, 买入300440.SZ, 成交量6172，成交价28.81\n",
      "2019-08-12, 买入300233.SZ, 成交量4412，成交价40.75\n",
      "2019-08-12, 买入300258.SZ, 成交量3729，成交价45.58\n",
      "2019-08-12, 买入300204.SZ, 成交量2192，成交价81.64\n",
      "2019-09-24, 卖出300204.SZ, 成交量-2192，成交价101.48\n",
      "2019-09-24, 卖出300440.SZ, 成交量-6172，成交价29.97\n",
      "2019-09-24, 卖出300233.SZ, 成交量-4412，成交价45.49\n",
      "2019-09-24, 卖出300258.SZ, 成交量-3729，成交价51.66\n",
      "2019-09-24, 买入300318.SZ, 成交量397，成交价25.65\n",
      "2019-09-24, 买入300257.SZ, 成交量2979，成交价66.34\n",
      "2019-09-24, 买入300376.SZ, 成交量1807，成交价109.04\n",
      "2019-09-24, 买入300087.SZ, 成交量3039，成交价64.97\n",
      "2019-09-24, 买入300305.SZ, 成交量5942，成交价33.49\n",
      "2019-11-12, 卖出300257.SZ, 成交量-2979，成交价67.63\n",
      "2019-11-12, 卖出300087.SZ, 成交量-3039，成交价64.81\n",
      "2019-11-12, 买入300376.SZ, 成交量198，成交价94.81\n",
      "2019-11-12, 卖出300305.SZ, 成交量-118，成交价32.76\n",
      "2019-11-12, 买入300204.SZ, 成交量2257，成交价84.38\n",
      "2019-11-12, 卖出300318.SZ, 成交量-297，成交价25.84\n",
      "2019-11-12, 买入300387.SZ, 成交量5033，成交价38.20\n",
      "2019-12-24, 卖出300387.SZ, 成交量-5033，成交价39.13\n",
      "2019-12-24, 卖出300376.SZ, 成交量-2005，成交价112.48\n",
      "2019-12-24, 买入300318.SZ, 成交量269，成交价25.71\n",
      "2019-12-24, 买入300233.SZ, 成交量4679，成交价42.33\n",
      "2019-12-24, 买入300204.SZ, 成交量38，成交价87.12\n",
      "2019-12-24, 买入300305.SZ, 成交量391，成交价32.15\n",
      "2019-12-24, 买入300013.SZ, 成交量5459，成交价36.40\n",
      "2020-02-13, 卖出300233.SZ, 成交量-4679，成交价42.46\n",
      "2020-02-13, 卖出300204.SZ, 成交量-2295，成交价120.77\n",
      "2020-02-13, 卖出300013.SZ, 成交量-5459，成交价24.80\n",
      "2020-02-13, 卖出300318.SZ, 成交量-7680，成交价30.67\n",
      "2020-02-13, 卖出300305.SZ, 成交量-6215，成交价30.28\n",
      "2020-02-13, 买入300526.SZ, 成交量1647，成交价125.67\n",
      "2020-02-13, 买入300257.SZ, 成交量3270，成交价62.95\n",
      "2020-02-13, 买入300219.SZ, 成交量5501，成交价37.36\n",
      "2020-02-13, 买入300498.SZ, 成交量4005，成交价51.42\n",
      "2020-02-13, 买入300470.SZ, 成交量2030，成交价101.91\n",
      "2020-03-26, 卖出300470.SZ, 成交量-2030，成交价96.80\n",
      "2020-03-26, 卖出300498.SZ, 成交量-4005，成交价49.75\n",
      "2020-03-26, 卖出300526.SZ, 成交量-675，成交价272.29\n",
      "2020-03-26, 买入300257.SZ, 成交量606，成交价61.66\n",
      "2020-03-26, 买入300219.SZ, 成交量477，成交价40.13\n",
      "2020-03-26, 买入300616.SZ, 成交量1986，成交价119.87\n",
      "2020-03-26, 买入300483.SZ, 成交量7297，成交价32.91\n",
      "2020-05-13, 卖出300483.SZ, 成交量-7297，成交价32.04\n",
      "2020-05-13, 卖出300219.SZ, 成交量-5978，成交价47.63\n",
      "2020-05-13, 卖出300257.SZ, 成交量-3876，成交价69.42\n",
      "2020-05-13, 买入300258.SZ, 成交量5543，成交价44.76\n",
      "2020-05-13, 买入300526.SZ, 成交量190，成交价214.23\n",
      "2020-05-13, 买入300442.SZ, 成交量15886，成交价15.63\n",
      "2020-05-13, 买入300056.SZ, 成交量7246，成交价33.62\n",
      "2020-05-13, 买入300616.SZ, 成交量114，成交价117.28\n",
      "2020-06-24, 卖出300056.SZ, 成交量-7246，成交价31.89\n",
      "2020-06-24, 卖出300526.SZ, 成交量-1162，成交价257.41\n",
      "2020-06-24, 卖出300442.SZ, 成交量-15886，成交价18.52\n",
      "2020-06-24, 买入300286.SZ, 成交量3703，成交价71.99\n",
      "2020-06-24, 买入300172.SZ, 成交量10255，成交价25.78\n",
      "2020-06-24, 卖出300258.SZ, 成交量-67，成交价48.28\n",
      "2020-06-24, 买入300105.SZ, 成交量10466，成交价25.32\n",
      "2020-06-24, 买入300616.SZ, 成交量209，成交价114.89\n",
      "2020-08-07, 卖出300172.SZ, 成交量-10255，成交价28.75\n",
      "2020-08-07, 卖出300286.SZ, 成交量-3703，成交价94.71\n",
      "2020-08-07, 卖出300258.SZ, 成交量-5476，成交价58.40\n",
      "2020-08-07, 卖出300105.SZ, 成交量-10466，成交价28.12\n",
      "2020-08-07, 卖出300616.SZ, 成交量-2309，成交价119.82\n",
      "2020-08-07, 买入300526.SZ, 成交量1537，成交价195.96\n",
      "2020-08-07, 买入300475.SZ, 成交量15614，成交价19.17\n",
      "2020-08-07, 买入300257.SZ, 成交量2667，成交价113.20\n",
      "2020-08-07, 买入300486.SZ, 成交量9465，成交价31.92\n",
      "2020-08-07, 买入300015.SZ, 成交量223，成交价1355.10\n",
      "2020-09-18, 卖出300015.SZ, 成交量-223，成交价1374.74\n",
      "2020-09-18, 卖出300526.SZ, 成交量-1537，成交价225.93\n",
      "2020-09-18, 卖出300475.SZ, 成交量-15614，成交价27.98\n",
      "2020-09-18, 卖出300257.SZ, 成交量-2667，成交价110.76\n",
      "2020-09-18, 买入300486.SZ, 成交量1869，成交价28.80\n",
      "2020-09-18, 买入003816.SZ, 成交量109732，成交价3.00\n",
      "2020-09-18, 买入300204.SZ, 成交量3692，成交价89.09\n",
      "2020-09-18, 买入300463.SZ, 成交量2211，成交价150.48\n",
      "2020-09-18, 买入300413.SZ, 成交量2934，成交价111.67\n",
      "2020-11-09, 卖出300204.SZ, 成交量-3692，成交价79.36\n",
      "2020-11-09, 卖出003816.SZ, 成交量-109732，成交价2.79\n",
      "2020-11-09, 卖出300463.SZ, 成交量-2211，成交价149.04\n",
      "2020-11-09, 卖出300413.SZ, 成交量-2934，成交价136.60\n",
      "2020-11-09, 买入300486.SZ, 成交量1371，成交价25.25\n",
      "2020-11-09, 买入300530.SZ, 成交量3543，成交价90.86\n",
      "2020-11-09, 买入300550.SZ, 成交量7229，成交价44.54\n",
      "2020-11-09, 买入300483.SZ, 成交量8786，成交价36.66\n",
      "2020-11-09, 买入300219.SZ, 成交量6230，成交价52.00\n",
      "2020-12-21, 卖出300219.SZ, 成交量-6230，成交价61.74\n",
      "2020-12-21, 卖出300486.SZ, 成交量-12705，成交价23.07\n",
      "2020-12-21, 卖出300483.SZ, 成交量-8786，成交价38.55\n",
      "2020-12-21, 卖出300530.SZ, 成交量-3543，成交价82.30\n",
      "2020-12-21, 买入300695.SZ, 成交量4869，成交价64.86\n",
      "2020-12-21, 买入300550.SZ, 成交量1111，成交价37.66\n",
      "2020-12-21, 买入300523.SZ, 成交量3517，成交价89.81\n",
      "2020-12-21, 买入300388.SZ, 成交量6062，成交价51.92\n",
      "2020-12-21, 买入300251.SZ, 成交量993，成交价316.75\n",
      "2021-02-02, 卖出300523.SZ, 成交量-3517，成交价71.47\n",
      "2021-02-02, 卖出300550.SZ, 成交量-8340，成交价37.56\n",
      "2021-02-02, 卖出300388.SZ, 成交量-6062，成交价46.46\n",
      "2021-02-02, 卖出300251.SZ, 成交量-993，成交价348.48\n",
      "2021-02-02, 买入300204.SZ, 成交量4651，成交价64.85\n",
      "2021-02-02, 卖出300695.SZ, 成交量-73，成交价62.90\n",
      "2021-02-02, 买入300332.SZ, 成交量33068，成交价9.16\n",
      "2021-02-02, 买入300521.SZ, 成交量9917，成交价30.33\n",
      "2021-02-02, 买入300321.SZ, 成交量8447，成交价36.20\n",
      "2021-03-23, 卖出300321.SZ, 成交量-8447，成交价38.38\n",
      "2021-03-23, 卖出300332.SZ, 成交量-33068，成交价10.96\n",
      "2021-03-23, 卖出300521.SZ, 成交量-9917，成交价29.38\n",
      "2021-03-23, 买入300550.SZ, 成交量9399，成交价33.58\n",
      "2021-03-23, 买入300486.SZ, 成交量13413，成交价23.00\n",
      "2021-03-23, 买入300695.SZ, 成交量258，成交价61.63\n",
      "2021-03-23, 买入300204.SZ, 成交量268，成交价63.28\n",
      "2021-03-23, 买入300768.SZ, 成交量8314，成交价37.20\n",
      "2021-05-10, 卖出300204.SZ, 成交量-4919，成交价63.76\n",
      "2021-05-10, 卖出300768.SZ, 成交量-8314，成交价35.27\n",
      "2021-05-10, 卖出300550.SZ, 成交量-9399，成交价35.61\n",
      "2021-05-10, 买入300695.SZ, 成交量410，成交价55.42\n",
      "2021-05-10, 买入300257.SZ, 成交量3301，成交价91.53\n",
      "2021-05-10, 买入300069.SZ, 成交量11584，成交价26.14\n",
      "2021-05-10, 买入300486.SZ, 成交量194，成交价22.57\n",
      "2021-05-10, 买入300371.SZ, 成交量6769，成交价45.00\n",
      "2021-06-22, 卖出300486.SZ, 成交量-13607，成交价27.79\n",
      "2021-06-22, 卖出300069.SZ, 成交量-11584，成交价41.15\n",
      "2021-06-22, 卖出300371.SZ, 成交量-6769，成交价51.86\n",
      "2021-06-22, 买入300695.SZ, 成交量848，成交价55.73\n",
      "2021-06-22, 买入300662.SZ, 成交量5825，成交价60.20\n",
      "2021-06-22, 买入300214.SZ, 成交量15348，成交价22.85\n",
      "2021-06-22, 买入300257.SZ, 成交量780，成交价85.94\n",
      "2021-06-22, 买入300174.SZ, 成交量6096，成交价57.95\n",
      "2021-08-03, 卖出300174.SZ, 成交量-6096，成交价59.25\n",
      "2021-08-03, 卖出300695.SZ, 成交量-6312，成交价53.19\n",
      "2021-08-03, 卖出300662.SZ, 成交量-5825，成交价55.12\n",
      "2021-08-03, 买入300388.SZ, 成交量8557，成交价40.76\n",
      "2021-08-03, 卖出300214.SZ, 成交量-42，成交价22.75\n",
      "2021-08-03, 卖出300257.SZ, 成交量-294，成交价92.11\n",
      "2021-08-03, 买入300616.SZ, 成交量2750，成交价126.01\n",
      "2021-08-03, 买入300392.SZ, 成交量7455，成交价46.41\n",
      "2021-09-14, 卖出300257.SZ, 成交量-3787，成交价106.30\n",
      "2021-09-14, 卖出300388.SZ, 成交量-8557，成交价46.19\n",
      "2021-09-14, 卖出300392.SZ, 成交量-7455，成交价45.45\n",
      "2021-09-14, 卖出300616.SZ, 成交量-2750，成交价92.26\n",
      "2021-09-14, 卖出300214.SZ, 成交量-15306，成交价26.89\n",
      "2021-09-14, 买入300475.SZ, 成交量9156，成交价39.70\n",
      "2021-09-14, 买入300396.SZ, 成交量4088，成交价88.67\n",
      "2021-09-14, 买入300298.SZ, 成交量2250，成交价160.48\n",
      "2021-09-14, 买入300492.SZ, 成交量4076，成交价87.89\n",
      "2021-09-14, 买入300628.SZ, 成交量356，成交价1018.97\n",
      "2021-11-04, 卖出300298.SZ, 成交量-2250，成交价149.36\n",
      "2021-11-04, 卖出300492.SZ, 成交量-4076，成交价90.51\n",
      "2021-11-04, 卖出300396.SZ, 成交量-4088，成交价80.02\n",
      "2021-11-04, 卖出300628.SZ, 成交量-356，成交价969.70\n",
      "2021-11-04, 卖出300475.SZ, 成交量-9156，成交价47.60\n",
      "2021-11-04, 买入300741.SZ, 成交量7042，成交价51.62\n",
      "2021-11-04, 买入300695.SZ, 成交量6566，成交价54.59\n",
      "2021-11-04, 买入300442.SZ, 成交量9206，成交价39.86\n",
      "2021-11-04, 买入300523.SZ, 成交量6333，成交价56.35\n",
      "2021-11-04, 买入300434.SZ, 成交量11278，成交价31.78\n",
      "2021-12-16, 卖出300434.SZ, 成交量-11278，成交价35.06\n",
      "2021-12-16, 卖出300442.SZ, 成交量-9206，成交价42.14\n",
      "2021-12-16, 卖出300523.SZ, 成交量-6333，成交价63.25\n",
      "2021-12-16, 卖出300741.SZ, 成交量-7042，成交价62.26\n",
      "2021-12-16, 卖出300695.SZ, 成交量-6566，成交价64.73\n",
      "2021-12-16, 买入300257.SZ, 成交量4035，成交价99.56\n",
      "2021-12-16, 买入300475.SZ, 成交量7968，成交价50.47\n",
      "2021-12-16, 买入300285.SZ, 成交量759，成交价530.11\n",
      "2021-12-16, 买入300760.SZ, 成交量1100，成交价365.46\n",
      "2021-12-16, 买入300627.SZ, 成交量3324，成交价121.07\n",
      "2022-01-28, 卖出300627.SZ, 成交量-3324，成交价112.69\n",
      "2022-01-28, 卖出300285.SZ, 成交量-759，成交价520.08\n",
      "2022-01-28, 卖出300257.SZ, 成交量-4035，成交价100.65\n",
      "2022-01-28, 卖出300475.SZ, 成交量-470，成交价51.03\n",
      "2022-01-28, 买入300760.SZ, 成交量63，成交价331.88\n",
      "2022-01-28, 买入300695.SZ, 成交量6445，成交价59.84\n",
      "2022-01-28, 买入300492.SZ, 成交量5999，成交价64.39\n",
      "2022-01-28, 买入300628.SZ, 成交量384，成交价1013.69\n",
      "2022-03-18, 卖出300628.SZ, 成交量-384，成交价976.74\n",
      "2022-03-18, 卖出300760.SZ, 成交量-1163，成交价323.51\n",
      "2022-03-18, 卖出300492.SZ, 成交量-223，成交价64.44\n",
      "2022-03-18, 买入300278.SZ, 成交量22339，成交价16.34\n",
      "2022-03-18, 买入300475.SZ, 成交量902，成交价43.58\n",
      "2022-03-18, 买入300530.SZ, 成交量5454，成交价67.40\n",
      "2022-03-18, 买入300695.SZ, 成交量323，成交价53.83\n",
      "2022-05-06, 卖出300475.SZ, 成交量-8400，成交价42.46\n",
      "2022-05-06, 卖出300530.SZ, 成交量-5454，成交价62.92\n",
      "2022-05-06, 买入300492.SZ, 成交量344，成交价59.60\n",
      "2022-05-06, 卖出300278.SZ, 成交量-1763，成交价17.13\n",
      "2022-05-06, 买入300695.SZ, 成交量240，成交价50.07\n",
      "2022-05-06, 买入300760.SZ, 成交量1103，成交价316.08\n",
      "2022-05-06, 买入300069.SZ, 成交量11018，成交价31.77\n",
      "2022-06-20, 卖出300069.SZ, 成交量-11018，成交价38.73\n",
      "2022-06-20, 卖出300278.SZ, 成交量-20576，成交价21.06\n",
      "2022-06-20, 卖出300760.SZ, 成交量-1103，成交价317.04\n",
      "2022-06-20, 卖出300492.SZ, 成交量-88，成交价64.97\n",
      "2022-06-20, 买入300475.SZ, 成交量9995，成交价39.55\n",
      "2022-06-20, 买入300257.SZ, 成交量4280，成交价92.36\n",
      "2022-06-20, 买入300695.SZ, 成交量25，成交价56.08\n",
      "2022-06-20, 买入300530.SZ, 成交量5474，成交价72.21\n",
      "2022-08-01, 卖出300695.SZ, 成交量-7033，成交价61.07\n",
      "2022-08-01, 卖出300475.SZ, 成交量-9995，成交价46.47\n",
      "2022-08-01, 卖出300530.SZ, 成交量-5474，成交价64.99\n",
      "2022-08-01, 买入300492.SZ, 成交量321，成交价64.05\n",
      "2022-08-01, 买入300285.SZ, 成交量1032，成交价395.96\n",
      "2022-08-01, 买入300628.SZ, 成交量424，成交价960.78\n",
      "2022-08-01, 卖出300257.SZ, 成交量-123，成交价97.69\n",
      "2022-08-01, 买入300388.SZ, 成交量10096，成交价41.03\n",
      "2022-09-13, 卖出300628.SZ, 成交量-424，成交价913.12\n",
      "2022-09-13, 卖出300285.SZ, 成交量-1032，成交价392.85\n",
      "2022-09-13, 卖出300388.SZ, 成交量-10096，成交价41.50\n",
      "2022-09-13, 卖出300257.SZ, 成交量-4157，成交价129.10\n",
      "2022-09-13, 买入300741.SZ, 成交量13493，成交价31.71\n",
      "2022-09-13, 买入003816.SZ, 成交量135674，成交价3.15\n",
      "2022-09-13, 买入430047.BJ, 成交量90，成交价4722.10\n",
      "2022-09-13, 买入300492.SZ, 成交量306，成交价64.26\n",
      "2022-09-13, 买入300255.SZ, 成交量9311，成交价46.27\n",
      "2022-11-01, 卖出300255.SZ, 成交量-9311，成交价45.95\n",
      "2022-11-01, 卖出300741.SZ, 成交量-13493，成交价30.17\n",
      "2022-11-01, 买入300492.SZ, 成交量167，成交价60.42\n",
      "2022-11-01, 买入003816.SZ, 成交量6298，成交价2.86\n",
      "2022-11-01, 卖出430047.BJ, 成交量-2，成交价4613.70\n",
      "2022-11-01, 买入300103.SZ, 成交量12236，成交价33.51\n",
      "2022-11-01, 买入300475.SZ, 成交量10968，成交价37.44\n",
      "2022-12-13, 卖出300103.SZ, 成交量-12236，成交价33.61\n",
      "2022-12-13, 卖出300475.SZ, 成交量-10968，成交价41.25\n",
      "2022-12-13, 买入300492.SZ, 成交量364，成交价61.60\n",
      "2022-12-13, 买入003816.SZ, 成交量6757，成交价2.97\n",
      "2022-12-13, 买入300695.SZ, 成交量8986，成交价49.13\n",
      "2022-12-13, 卖出430047.BJ, 成交量-13，成交价5962.25\n",
      "2022-12-13, 买入300627.SZ, 成交量3702，成交价119.05\n",
      "2023-02-01, 卖出300627.SZ, 成交量-3702，成交价124.85\n",
      "2023-02-01, 卖出300695.SZ, 成交量-8986，成交价50.35\n",
      "2023-02-01, 卖出300492.SZ, 成交量-7190，成交价85.81\n",
      "2023-02-01, 卖出430047.BJ, 成交量-75，成交价6447.90\n",
      "2023-02-01, 买入003816.SZ, 成交量16280，成交价2.95\n",
      "2023-02-01, 买入300475.SZ, 成交量12060，成交价40.34\n",
      "2023-02-01, 买入300005.SZ, 成交量5378，成交价90.65\n",
      "2023-02-01, 买入300741.SZ, 成交量15348，成交价31.68\n",
      "2023-02-01, 买入300388.SZ, 成交量12952，成交价37.66\n",
      "最终资金: 2761024.93\n",
      "夏普比率: OrderedDict([('sharperatio', 0.8838629535988304)])\n",
      "回撤指标: AutoOrderedDict([('len', 0), ('drawdown', 0.0), ('moneydown', 0.0), ('max', AutoOrderedDict([('len', 229), ('drawdown', 24.554907537584505), ('moneydown', 596674.2777858002)]))])\n"
     ]
    }
   ],
   "source": [
    "start=datetime(2018,1,2)\n",
    "end=datetime(2023,2,10)\n",
    "stock_daily_part=stock_daily[(stock_daily[\"date\"]>=start)&(stock_daily[\"date\"]<=end)].copy()\n",
    "result=huice_run_num(start,end,buy_date,sell_date,stock_daily_part,stock_list,my_strategy_date_2)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "id": "eded28e7",
   "metadata": {},
   "outputs": [],
   "source": []
  },
  {
   "cell_type": "markdown",
   "id": "a2caca46",
   "metadata": {},
   "source": [
    "## 回测与因子分析"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "id": "d9daced7",
   "metadata": {},
   "outputs": [],
   "source": []
  },
  {
   "cell_type": "markdown",
   "id": "791c9b8c",
   "metadata": {},
   "source": [
    "## 多因子策略\n",
    "\n",
    "* 市值，市盈率"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 53,
   "id": "df9676af",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "Index(['index', 'date', '股票代码', '股票简称', 'open', 'high', 'low', 'close',\n",
       "       'volume', '成交额(千元)', '换手率(%)', '量比', '市盈率(静态)', '市盈率(TTM)', '市盈率(动态)',\n",
       "       '市净率', '市销率', '市销率(TTM)', '股息率(%)', '股息率(TTM)(%)', '总股本(万股)',\n",
       "       '流通股本(万股)', '总市值(万元)', '流通市值(万元)', 'openinterest'],\n",
       "      dtype='object')"
      ]
     },
     "execution_count": 53,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "stock_daily.columns"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 83,
   "id": "62579667",
   "metadata": {},
   "outputs": [],
   "source": [
    "time_i=stock_daily.date.sort_values().unique()\n",
    "top_num=5\n",
    "\n",
    "stock_list=set([])\n",
    "buy_date={}\n",
    "sell_date={}\n",
    "postion=set([])\n",
    "\n",
    "for i in range(0,len(time_i),30):\n",
    "    stock_chi=stock_daily[(stock_daily.date==time_i[i+1])&(stock_daily.open!=stock_daily.close)][\"股票代码\"].tolist()\n",
    "    stock_oneday=stock_daily[(stock_daily.date==time_i[i])&stock_daily[\"股票代码\"].isin(stock_chi)]\n",
    "    z1=stock_oneday.loc[:,'市盈率(静态)'].rank(ascending=False)+stock_oneday.loc[:,'总市值(万元)'].rank()\n",
    "    stock_list_z=pd.concat([stock_oneday[\"股票代码\"],z1],axis=1).sort_values(0)[\"股票代码\"].head(5).tolist()\n",
    "\n",
    "    stock_list=stock_list|set(stock_list_z)\n",
    "    buy_date.update({str(time_i[i].date()):stock_list_z})\n",
    "    sell_date.update({str(time_i[i].date()):list(postion-set(stock_list_z))})\n",
    "    postion=set(stock_list_z)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 81,
   "id": "049204ef",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "['300354.SZ', '300211.SZ', '300126.SZ', '300442.SZ', '300093.SZ']"
      ]
     },
     "execution_count": 81,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "pd.concat([stock_oneday[\"股票代码\"],z1],axis=1).sort_values(0)[\"股票代码\"].head(5).tolist()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 84,
   "id": "969cabce",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "2018-01-02 2023-02-10\n",
      "初始资金: 1000000.00\n",
      "2018-01-03, 买入300354.SZ, 成交量4436，成交价40.60\n",
      "2018-01-03, 买入300211.SZ, 成交量4007，成交价45.04\n",
      "2018-01-03, 买入300126.SZ, 成交量6771，成交价26.50\n",
      "2018-01-03, 买入300442.SZ, 成交量8358，成交价21.67\n",
      "2018-01-03, 买入300093.SZ, 成交量8713，成交价20.68\n",
      "2018-02-14, 卖出300211.SZ, 成交量-4007，成交价38.53\n",
      "2018-02-14, 卖出300442.SZ, 成交量-8358，成交价17.59\n",
      "2018-02-14, 买入300354.SZ, 成交量188，成交价31.57\n",
      "2018-02-14, 买入300220.SZ, 成交量3313，成交价43.67\n",
      "2018-02-14, 买入300093.SZ, 成交量1333，成交价14.65\n",
      "2018-02-14, 买入300404.SZ, 成交量5352，成交价27.23\n",
      "2018-02-14, 卖出300126.SZ, 成交量-48，成交价21.53\n",
      "2018-04-04, 卖出300220.SZ, 成交量-3313，成交价52.17\n",
      "2018-04-04, 卖出300404.SZ, 成交量-5352，成交价44.38\n",
      "2018-04-04, 卖出300354.SZ, 成交量-276，成交价44.34\n",
      "2018-04-04, 买入300093.SZ, 成交量1197，成交价16.09\n",
      "2018-04-04, 买入300092.SZ, 成交量9406，成交价19.34\n",
      "2018-04-04, 买入300211.SZ, 成交量4272，成交价42.51\n",
      "2018-04-04, 买入300126.SZ, 成交量753，成交价24.04\n",
      "2018-05-22, 卖出300093.SZ, 成交量-11243，成交价15.87\n",
      "2018-05-22, 买入300354.SZ, 成交量380，成交价37.70\n",
      "2018-05-22, 买入300126.SZ, 成交量249，成交价22.84\n",
      "2018-05-22, 买入300330.SZ, 成交量7863，成交价22.84\n",
      "2018-05-22, 卖出300211.SZ, 成交量-66，成交价42.26\n",
      "2018-05-22, 卖出300092.SZ, 成交量-564，成交价20.01\n",
      "2018-07-04, 买入300354.SZ, 成交量11，成交价31.60\n",
      "2018-07-04, 买入300211.SZ, 成交量141，成交价34.27\n",
      "2018-07-04, 买入300126.SZ, 成交量165，成交价19.02\n",
      "2018-07-04, 买入300092.SZ, 成交量470，成交价16.05\n",
      "2018-07-04, 卖出300330.SZ, 成交量-262，成交价19.89\n",
      "2018-08-15, 卖出300126.SZ, 成交量-7890，成交价19.68\n",
      "2018-08-15, 卖出300211.SZ, 成交量-4347，成交价34.78\n",
      "2018-08-15, 买入300354.SZ, 成交量138，成交价30.51\n",
      "2018-08-15, 买入300483.SZ, 成交量6211，成交价23.92\n",
      "2018-08-15, 买入300330.SZ, 成交量516，成交价18.35\n",
      "2018-08-15, 买入300268.SZ, 成交量6072，成交价24.16\n",
      "2018-08-15, 卖出300092.SZ, 成交量-95，成交价16.05\n",
      "2018-09-27, 卖出300092.SZ, 成交量-9217，成交价19.67\n",
      "2018-09-27, 卖出300483.SZ, 成交量-6211，成交价27.07\n",
      "2018-09-27, 买入300354.SZ, 成交量325，成交价29.75\n",
      "2018-09-27, 买入300268.SZ, 成交量549，成交价23.31\n",
      "2018-09-27, 买入300126.SZ, 成交量8357，成交价18.44\n",
      "2018-09-27, 买入300330.SZ, 成交量832，成交价17.31\n",
      "2018-09-27, 买入300211.SZ, 成交量4726，成交价32.74\n",
      "2018-11-15, 卖出300126.SZ, 成交量-8357，成交价20.99\n",
      "2018-11-15, 买入300268.SZ, 成交量637，成交价21.16\n",
      "2018-11-15, 买入300354.SZ, 成交量30，成交价29.23\n",
      "2018-11-15, 买入300330.SZ, 成交量118，成交价16.88\n",
      "2018-11-15, 买入300211.SZ, 成交量90，成交价31.85\n",
      "2018-11-15, 买入300442.SZ, 成交量10695，成交价14.51\n",
      "2018-12-27, 卖出300442.SZ, 成交量-10695，成交价13.25\n",
      "2018-12-27, 买入300354.SZ, 成交量309，成交价26.65\n",
      "2018-12-27, 买入300330.SZ, 成交量519，成交价15.43\n",
      "2018-12-27, 卖出300268.SZ, 成交量-668，成交价22.72\n",
      "2018-12-27, 卖出300211.SZ, 成交量-140，成交价31.60\n",
      "2018-12-27, 买入300092.SZ, 成交量9414，成交价15.71\n",
      "2019-02-18, 卖出300092.SZ, 成交量-9414，成交价17.60\n",
      "2019-02-18, 卖出300268.SZ, 成交量-6590，成交价26.74\n",
      "2019-02-18, 买入300354.SZ, 成交量53，成交价28.40\n",
      "2019-02-18, 买入300330.SZ, 成交量672，成交价15.49\n",
      "2019-02-18, 买入300211.SZ, 成交量125，成交价33.00\n",
      "2019-02-18, 买入300442.SZ, 成交量12468，成交价12.80\n",
      "2019-02-18, 买入300126.SZ, 成交量8178，成交价19.95\n",
      "2019-04-01, 卖出300211.SZ, 成交量-4801，成交价45.74\n",
      "2019-04-01, 买入300354.SZ, 成交量23，成交价35.43\n",
      "2019-04-01, 卖出300330.SZ, 成交量-587，成交价20.46\n",
      "2019-04-01, 买入300442.SZ, 成交量750，成交价15.01\n",
      "2019-04-01, 买入300235.SZ, 成交量5227，成交价37.77\n",
      "2019-04-01, 卖出300126.SZ, 成交量-215，成交价24.94\n",
      "2019-05-17, 卖出300235.SZ, 成交量-5227，成交价35.85\n",
      "2019-05-17, 卖出300442.SZ, 成交量-13218，成交价14.30\n",
      "2019-05-17, 卖出300126.SZ, 成交量-7963，成交价23.35\n",
      "2019-05-17, 卖出300330.SZ, 成交量-9671，成交价18.85\n",
      "2019-05-17, 卖出300354.SZ, 成交量-5617，成交价36.58\n",
      "2019-05-17, 买入300489.SZ, 成交量5509，成交价34.06\n",
      "2019-05-17, 买入300680.SZ, 成交量9714，成交价19.50\n",
      "2019-05-17, 买入300254.SZ, 成交量15189，成交价12.38\n",
      "2019-05-17, 买入300092.SZ, 成交量9464，成交价19.83\n",
      "2019-05-17, 买入300211.SZ, 成交量4734，成交价43.43\n",
      "2019-07-01, 卖出300211.SZ, 成交量-4734，成交价43.75\n",
      "2019-07-01, 卖出300489.SZ, 成交量-14，成交价34.94\n",
      "2019-07-01, 卖出300680.SZ, 成交量-526，成交价20.10\n",
      "2019-07-01, 买入300254.SZ, 成交量989，成交价11.88\n",
      "2019-07-01, 买入300092.SZ, 成交量354，成交价19.65\n",
      "2019-07-01, 买入300141.SZ, 成交量5649，成交价33.95\n",
      "2019-08-12, 买入300680.SZ, 成交量177，成交价18.63\n",
      "2019-08-12, 卖出300489.SZ, 成交量-346，成交价33.86\n",
      "2019-08-12, 买入300092.SZ, 成交量535，成交价16.94\n",
      "2019-08-12, 卖出300254.SZ, 成交量-473，成交价11.10\n",
      "2019-08-12, 买入300141.SZ, 成交量406，成交价28.69\n",
      "2019-09-24, 卖出300680.SZ, 成交量-219，成交价21.19\n",
      "2019-09-24, 卖出300489.SZ, 成交量-162，成交价38.47\n",
      "2019-09-24, 买入300092.SZ, 成交量130，成交价18.45\n",
      "2019-09-24, 卖出300254.SZ, 成交量-55，成交价12.36\n",
      "2019-09-24, 卖出300141.SZ, 成交量-41，成交价31.93\n",
      "2019-11-12, 卖出300680.SZ, 成交量-11，成交价19.65\n",
      "2019-11-12, 买入300489.SZ, 成交量153，成交价35.10\n",
      "2019-11-12, 卖出300092.SZ, 成交量-128，成交价17.55\n",
      "2019-11-12, 买入300254.SZ, 成交量179，成交价11.40\n",
      "2019-11-12, 买入300141.SZ, 成交量66，成交价29.63\n",
      "2019-12-24, 卖出300680.SZ, 成交量-524，成交价21.96\n",
      "2019-12-24, 卖出300489.SZ, 成交量-210，成交价38.49\n",
      "2019-12-24, 买入300254.SZ, 成交量345，成交价11.67\n",
      "2019-12-24, 买入300141.SZ, 成交量328，成交价29.58\n",
      "2019-12-24, 买入300092.SZ, 成交量61，成交价18.14\n",
      "2020-02-13, 卖出300254.SZ, 成交量-16174，成交价13.31\n",
      "2020-02-13, 买入300680.SZ, 成交量1029，成交价20.42\n",
      "2020-02-13, 买入300092.SZ, 成交量1312，成交价16.81\n",
      "2020-02-13, 买入300141.SZ, 成交量122，成交价29.96\n",
      "2020-02-13, 买入300539.SZ, 成交量13229，成交价14.90\n",
      "2020-02-13, 卖出300489.SZ, 成交量-707，成交价47.08\n",
      "2020-03-26, 卖出300489.SZ, 成交量-4223，成交价74.22\n",
      "2020-03-26, 卖出300141.SZ, 成交量-6530，成交价53.91\n",
      "2020-03-26, 卖出300539.SZ, 成交量-13229，成交价15.57\n",
      "2020-03-26, 买入300254.SZ, 成交量21696，成交价11.67\n",
      "2020-03-26, 买入300721.SZ, 成交量11492，成交价21.80\n",
      "2020-03-26, 买入300680.SZ, 成交量270，成交价27.20\n",
      "2020-03-26, 买入300092.SZ, 成交量1237，成交价19.55\n",
      "2020-03-26, 买入300554.SZ, 成交量9759，成交价25.61\n",
      "2020-05-13, 卖出300554.SZ, 成交量-9759，成交价25.80\n",
      "2020-05-13, 卖出300680.SZ, 成交量-9910，成交价24.62\n",
      "2020-05-13, 卖出300092.SZ, 成交量-12965，成交价18.22\n",
      "2020-05-13, 买入300254.SZ, 成交量2705，成交价9.99\n",
      "2020-05-13, 买入300330.SZ, 成交量12845，成交价19.05\n",
      "2020-05-13, 买入300721.SZ, 成交量1695，成交价18.29\n",
      "2020-05-13, 买入300312.SZ, 成交量15466，成交价15.71\n",
      "2020-05-13, 买入300555.SZ, 成交量11547，成交价21.19\n",
      "2020-06-24, 卖出300330.SZ, 成交量-12845，成交价22.60\n",
      "2020-06-24, 买入300254.SZ, 成交量47，成交价10.16\n",
      "2020-06-24, 买入300312.SZ, 成交量4639，成交价12.22\n",
      "2020-06-24, 买入300153.SZ, 成交量11042，成交价22.44\n",
      "2020-06-24, 买入300555.SZ, 成交量258，成交价21.02\n",
      "2020-06-24, 卖出300721.SZ, 成交量-1423，成交价21.13\n",
      "2020-08-07, 卖出300721.SZ, 成交量-11764，成交价24.59\n",
      "2020-08-07, 买入300153.SZ, 成交量533，成交价24.48\n",
      "2020-08-07, 卖出300312.SZ, 成交量-1448，成交价15.01\n",
      "2020-08-07, 卖出300254.SZ, 成交量-815，成交价11.68\n",
      "2020-08-07, 买入300555.SZ, 成交量314，成交价23.29\n",
      "2020-08-07, 买入300330.SZ, 成交量10822，成交价26.05\n",
      "2020-09-18, 买入300254.SZ, 成交量1197，成交价13.16\n",
      "2020-09-18, 卖出300153.SZ, 成交量-669，成交价29.50\n",
      "2020-09-18, 买入300555.SZ, 成交量656，成交价25.53\n",
      "2020-09-18, 买入300330.SZ, 成交量1051，成交价27.41\n",
      "2020-09-18, 卖出300312.SZ, 成交量-3161，成交价20.56\n",
      "2020-11-09, 卖出300153.SZ, 成交量-10906，成交价46.77\n",
      "2020-11-09, 卖出300312.SZ, 成交量-15496，成交价26.53\n",
      "2020-11-09, 买入300330.SZ, 成交量2664，成交价26.65\n",
      "2020-11-09, 买入300254.SZ, 成交量4530，成交价12.94\n",
      "2020-11-09, 买入300555.SZ, 成交量147，成交价29.87\n",
      "2020-11-09, 买入300721.SZ, 成交量12557，成交价30.47\n",
      "2020-11-09, 买入300592.SZ, 成交量19723，成交价19.15\n",
      "2020-12-21, 卖出300721.SZ, 成交量-12557，成交价32.00\n",
      "2020-12-21, 卖出300592.SZ, 成交量-19723，成交价17.92\n",
      "2020-12-21, 买入300330.SZ, 成交量983，成交价22.23\n",
      "2020-12-21, 买入300254.SZ, 成交量3437，成交价10.49\n",
      "2020-12-21, 买入300312.SZ, 成交量19407，成交价18.07\n",
      "2020-12-21, 买入300555.SZ, 成交量809，成交价25.15\n",
      "2020-12-21, 买入300211.SZ, 成交量7909，成交价41.98\n",
      "2021-02-02, 卖出300211.SZ, 成交量-7909，成交价55.79\n",
      "2021-02-02, 买入300555.SZ, 成交量2057，成交价18.70\n",
      "2021-02-02, 买入300330.SZ, 成交量824，成交价17.86\n",
      "2021-02-02, 买入300153.SZ, 成交量13213，成交价22.12\n",
      "2021-02-02, 买入300254.SZ, 成交量4419，成交价7.96\n",
      "2021-02-02, 买入300312.SZ, 成交量9109，成交价10.37\n",
      "2021-03-23, 买入300153.SZ, 成交量1295，成交价25.26\n",
      "2021-03-23, 买入300254.SZ, 成交量2711，成交价8.98\n",
      "2021-03-23, 买入300330.SZ, 成交量2093，成交价19.46\n",
      "2021-03-23, 买入300555.SZ, 成交量1383，成交价20.92\n",
      "2021-03-23, 卖出300312.SZ, 成交量-9074，成交价18.40\n",
      "2021-05-10, 卖出300254.SZ, 成交量-39927，成交价10.22\n",
      "2021-05-10, 卖出300153.SZ, 成交量-14508，成交价28.76\n",
      "2021-05-10, 卖出300312.SZ, 成交量-19442，成交价9.40\n",
      "2021-05-10, 买入300700.SZ, 成交量23333，成交价14.69\n",
      "2021-05-10, 买入300807.SZ, 成交量14654，成交价23.41\n",
      "2021-05-10, 卖出300330.SZ, 成交量-70，成交价18.77\n",
      "2021-05-10, 卖出300555.SZ, 成交量-887，成交价22.25\n",
      "2021-05-10, 买入300345.SZ, 成交量21285，成交价16.46\n",
      "2021-06-22, 卖出300345.SZ, 成交量-21285，成交价24.56\n",
      "2021-06-22, 买入300700.SZ, 成交量826，成交价17.61\n",
      "2021-06-22, 买入300534.SZ, 成交量19905，成交价21.29\n",
      "2021-06-22, 买入300807.SZ, 成交量713，成交价27.65\n",
      "2021-06-22, 买入300555.SZ, 成交量734，成交价24.93\n",
      "2021-06-22, 卖出300330.SZ, 成交量-174，成交价23.14\n",
      "2021-08-03, 卖出300330.SZ, 成交量-18193，成交价23.06\n",
      "2021-08-03, 卖出300700.SZ, 成交量-903，成交价18.62\n",
      "2021-08-03, 买入300807.SZ, 成交量1070，成交价26.06\n",
      "2021-08-03, 买入300555.SZ, 成交量713，成交价24.52\n",
      "2021-08-03, 卖出300534.SZ, 成交量-1783，成交价23.58\n",
      "2021-08-03, 买入300313.SZ, 成交量34407，成交价12.47\n",
      "2021-09-14, 卖出300313.SZ, 成交量-34407，成交价20.53\n",
      "2021-09-14, 买入300700.SZ, 成交量2055，成交价18.66\n",
      "2021-09-14, 买入300807.SZ, 成交量2632，成交价24.51\n",
      "2021-09-14, 买入300555.SZ, 成交量3306，成交价22.28\n",
      "2021-09-14, 买入300534.SZ, 成交量1007，成交价24.53\n",
      "2021-09-14, 买入300330.SZ, 成交量20960，成交价22.56\n",
      "2021-11-04, 卖出300700.SZ, 成交量-189，成交价16.40\n",
      "2021-11-04, 卖出300807.SZ, 成交量-733，成交价22.80\n",
      "2021-11-04, 买入300534.SZ, 成交量2594，成交价19.18\n",
      "2021-11-04, 卖出300555.SZ, 成交量-1，成交价19.88\n",
      "2021-11-04, 买入300330.SZ, 成交量284，成交价19.44\n",
      "2021-12-16, 买入300700.SZ, 成交量1438，成交价18.31\n",
      "2021-12-16, 买入300534.SZ, 成交量464，成交价21.64\n",
      "2021-12-16, 卖出300555.SZ, 成交量-31，成交价22.98\n",
      "2021-12-16, 买入300330.SZ, 成交量2233，成交价20.50\n",
      "2021-12-16, 卖出300807.SZ, 成交量-3614，成交价32.41\n",
      "2022-01-28, 卖出300534.SZ, 成交量-22187，成交价36.70\n",
      "2022-01-28, 买入300807.SZ, 成交量7854，成交价23.81\n",
      "2022-01-28, 买入300555.SZ, 成交量4819，成交价20.87\n",
      "2022-01-28, 买入300330.SZ, 成交量3941，成交价19.68\n",
      "2022-01-28, 卖出300700.SZ, 成交量-4284，成交价23.03\n",
      "2022-01-28, 买入300313.SZ, 成交量41801，成交价12.81\n",
      "2022-03-18, 卖出300330.SZ, 成交量-27418，成交价26.09\n",
      "2022-03-18, 买入300555.SZ, 成交量2749，成交价20.56\n",
      "2022-03-18, 买入300313.SZ, 成交量4935，成交价12.71\n",
      "2022-03-18, 卖出300807.SZ, 成交量-3251，成交价29.83\n",
      "2022-03-18, 买入300700.SZ, 成交量2256，成交价23.73\n",
      "2022-03-18, 买入300615.SZ, 成交量22839，成交价25.74\n",
      "2022-05-06, 卖出300313.SZ, 成交量-46736，成交价10.03\n",
      "2022-05-06, 卖出300807.SZ, 成交量-19325，成交价19.14\n",
      "2022-05-06, 卖出300555.SZ, 成交量-28573，成交价17.66\n",
      "2022-05-06, 卖出300700.SZ, 成交量-24532，成交价23.07\n",
      "2022-05-06, 卖出300615.SZ, 成交量-22839，成交价22.31\n",
      "2022-05-06, 买入300321.SZ, 成交量15905，成交价30.47\n",
      "2022-05-06, 买入300594.SZ, 成交量34206，成交价14.33\n",
      "2022-05-06, 买入300736.SZ, 成交量22725，成交价22.00\n",
      "2022-05-06, 买入300521.SZ, 成交量25375，成交价19.07\n",
      "2022-05-06, 买入300637.SZ, 成交量38530，成交价12.79\n",
      "2022-06-20, 卖出300321.SZ, 成交量-203，成交价34.85\n",
      "2022-06-20, 买入300521.SZ, 成交量1664，成交价19.85\n",
      "2022-06-20, 卖出300594.SZ, 成交量-1637，成交价16.72\n",
      "2022-06-20, 卖出300736.SZ, 成交量-333，成交价23.97\n",
      "2022-06-20, 卖出300637.SZ, 成交量-516，成交价14.12\n",
      "2022-08-01, 买入300321.SZ, 成交量513，成交价36.73\n",
      "2022-08-01, 卖出300594.SZ, 成交量-1375，成交价18.78\n",
      "2022-08-01, 买入300736.SZ, 成交量818，成交价25.38\n",
      "2022-08-01, 卖出300521.SZ, 成交量-1373，成交价23.63\n",
      "2022-08-01, 卖出300637.SZ, 成交量-621，成交价15.78\n",
      "2022-09-13, 卖出300321.SZ, 成交量-388，成交价36.67\n",
      "2022-09-13, 买入300594.SZ, 成交量2992，成交价16.92\n",
      "2022-09-13, 买入300521.SZ, 成交量2530，成交价20.56\n",
      "2022-09-13, 卖出300736.SZ, 成交量-3159，成交价28.70\n",
      "2022-09-13, 买入300637.SZ, 成交量645，成交价15.13\n",
      "2022-11-01, 买入300321.SZ, 成交量905，成交价32.47\n",
      "2022-11-01, 买入300594.SZ, 成交量201，成交价15.75\n",
      "2022-11-01, 卖出300521.SZ, 成交量-336，成交价19.45\n",
      "2022-11-01, 卖出300736.SZ, 成交量-727，成交价28.29\n",
      "2022-11-01, 买入300637.SZ, 成交量924，成交价13.90\n",
      "2022-12-13, 卖出300736.SZ, 成交量-19324，成交价37.85\n",
      "2022-12-13, 买入300321.SZ, 成交量966，成交价34.74\n",
      "2022-12-13, 买入300521.SZ, 成交量4627，成交价18.90\n",
      "2022-12-13, 买入300637.SZ, 成交量4233，成交价14.32\n",
      "2022-12-13, 卖出300594.SZ, 成交量-5394，成交价20.85\n",
      "2022-12-13, 买入300126.SZ, 成交量27176，成交价22.52\n",
      "2023-02-01, 卖出300126.SZ, 成交量-27176，成交价24.07\n",
      "2023-02-01, 买入300321.SZ, 成交量841，成交价35.42\n",
      "2023-02-01, 买入300637.SZ, 成交量3222，成交价14.02\n",
      "2023-02-01, 卖出300521.SZ, 成交量-4854，成交价23.74\n",
      "2023-02-01, 买入300594.SZ, 成交量1008，成交价21.84\n",
      "2023-02-01, 买入300405.SZ, 成交量30238，成交价21.64\n",
      "最终资金: 3861042.23\n",
      "夏普比率: OrderedDict([('sharperatio', 0.8534606152146049)])\n",
      "回撤指标: AutoOrderedDict([('len', 0), ('drawdown', 0.0), ('moneydown', 0.0), ('max', AutoOrderedDict([('len', 219), ('drawdown', 34.53931864576216), ('moneydown', 1070766.1442338)]))])\n"
     ]
    }
   ],
   "source": [
    "start=datetime(2018,1,2)\n",
    "end=datetime(2023,2,10)\n",
    "stock_daily_part=stock_daily[(stock_daily[\"date\"]>=start)&(stock_daily[\"date\"]<=end)].copy()\n",
    "result=huice_run_num(start,end,buy_date,sell_date,stock_daily_part,stock_list,my_strategy_date_2)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 52,
   "id": "4739bac9",
   "metadata": {},
   "outputs": [
    {
     "ename": "NameError",
     "evalue": "name 'index_time' is not defined",
     "output_type": "error",
     "traceback": [
      "\u001b[1;31m---------------------------------------------------------------------------\u001b[0m",
      "\u001b[1;31mNameError\u001b[0m                                 Traceback (most recent call last)",
      "Cell \u001b[1;32mIn[52], line 1\u001b[0m\n\u001b[1;32m----> 1\u001b[0m index_time_scale\u001b[38;5;241m=\u001b[39m\u001b[43mindex_time\u001b[49m\u001b[38;5;241m/\u001b[39mindex_time\u001b[38;5;241m.\u001b[39miloc[\u001b[38;5;241m0\u001b[39m]\n\u001b[0;32m      2\u001b[0m index_time_scale\u001b[38;5;241m.\u001b[39mplot(figsize\u001b[38;5;241m=\u001b[39m(\u001b[38;5;241m18\u001b[39m,\u001b[38;5;241m4\u001b[39m))\n\u001b[0;32m      3\u001b[0m cash_value\u001b[38;5;241m=\u001b[39mpd\u001b[38;5;241m.\u001b[39mSeries(result)\u001b[38;5;241m/\u001b[39m\u001b[38;5;241m1000000\u001b[39m\n",
      "\u001b[1;31mNameError\u001b[0m: name 'index_time' is not defined"
     ]
    }
   ],
   "source": [
    "index_time_scale=index_time/index_time.iloc[0]\n",
    "index_time_scale.plot(figsize=(18,4))\n",
    "cash_value=pd.Series(result)/1000000\n",
    "cash_value.plot()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 42,
   "id": "fd5d589c",
   "metadata": {},
   "outputs": [],
   "source": [
    "stock_oneday.loc[:,\"rank\"]=stock_oneday['市盈率(静态)'].rank(ascending=False)+stock_oneday['总市值(万元)'].rank()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 48,
   "id": "8bcd5134",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "['300354.SZ', '300211.SZ', '300126.SZ', '300442.SZ', '300093.SZ']"
      ]
     },
     "execution_count": 48,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "stock_oneday.sort_values(\"rank\").head(5)[\"股票代码\"].tolist()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 43,
   "id": "8ae1a2a8",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "Index(['index', 'date', '股票代码', '股票简称', 'open', 'high', 'low', 'close',\n",
       "       'volume', '成交额(千元)', '换手率(%)', '量比', '市盈率(静态)', '市盈率(TTM)', '市盈率(动态)',\n",
       "       '市净率', '市销率', '市销率(TTM)', '股息率(%)', '股息率(TTM)(%)', '总股本(万股)',\n",
       "       '流通股本(万股)', '总市值(万元)', '流通市值(万元)', 'openinterest', 'rank'],\n",
       "      dtype='object')"
      ]
     },
     "execution_count": 43,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "stock_oneday.columns"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 32,
   "id": "e4ebddf7",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "date\n",
       "2018-01-02     947.0\n",
       "2018-01-02    1186.0\n",
       "2018-01-02     926.0\n",
       "2018-01-02     714.0\n",
       "2018-01-02     938.0\n",
       "               ...  \n",
       "2018-01-02     350.0\n",
       "2018-01-02     554.0\n",
       "2018-01-02     401.0\n",
       "2018-01-02     487.0\n",
       "2018-01-02     862.0\n",
       "Name: rank, Length: 650, dtype: float64"
      ]
     },
     "execution_count": 32,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "stock_oneday[\"rank\"]"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 28,
   "id": "267822c5",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "date\n",
       "2018-01-02    590.0\n",
       "2018-01-02    571.0\n",
       "2018-01-02    640.0\n",
       "2018-01-02    380.0\n",
       "2018-01-02    361.0\n",
       "              ...  \n",
       "2018-01-02    196.0\n",
       "2018-01-02    159.0\n",
       "2018-01-02    291.0\n",
       "2018-01-02    197.0\n",
       "2018-01-02    419.0\n",
       "Name: 总市值(万元), Length: 650, dtype: float64"
      ]
     },
     "execution_count": 28,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "stock_oneday['总市值(万元)'].rank()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 57,
   "id": "b62d2ca8",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "300029.SZ      0\n",
       "300106.SZ      1\n",
       "300354.SZ      2\n",
       "300028.SZ      3\n",
       "300330.SZ      4\n",
       "            ... \n",
       "300059.SZ    645\n",
       "300072.SZ    646\n",
       "300433.SZ    647\n",
       "300676.SZ    648\n",
       "300498.SZ    649\n",
       "Length: 650, dtype: int64"
      ]
     },
     "execution_count": 57,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "df_0=pd.Series(range(0,len(s_0)),index=s_0)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 63,
   "id": "5192db41",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "['300029.SZ', '300106.SZ', '300354.SZ', '300028.SZ', '300330.SZ']"
      ]
     },
     "execution_count": 63,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "(df_0+df_1).head(5).index.tolist()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 16,
   "id": "d2a648d3",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "date\n",
       "2018-01-02    357.0\n",
       "2018-01-02    615.0\n",
       "2018-01-02    286.0\n",
       "2018-01-02    334.0\n",
       "2018-01-02    577.0\n",
       "              ...  \n",
       "2018-01-02    154.0\n",
       "2018-01-02    395.0\n",
       "2018-01-02    110.0\n",
       "2018-01-02    290.0\n",
       "2018-01-02    443.0\n",
       "Name: 市盈率(静态), Length: 650, dtype: float64"
      ]
     },
     "execution_count": 16,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "stock_daily_z[\"市盈率(静态)\"].rank(ascending=False)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 13,
   "id": "95eca58b",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "date\n",
       "2018-01-02    590.0\n",
       "2018-01-02    571.0\n",
       "2018-01-02    640.0\n",
       "2018-01-02    380.0\n",
       "2018-01-02    361.0\n",
       "              ...  \n",
       "2018-01-02    196.0\n",
       "2018-01-02    159.0\n",
       "2018-01-02    291.0\n",
       "2018-01-02    197.0\n",
       "2018-01-02    419.0\n",
       "Name: 总市值(万元), Length: 650, dtype: float64"
      ]
     },
     "execution_count": 13,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "stock_daily_z[\"总市值(万元)\"].rank()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 7,
   "id": "aeb67e4c",
   "metadata": {},
   "outputs": [],
   "source": [
    "time_i=stock_daily.date.sort_values().unique()\n",
    "top_num=5\n",
    "\n",
    "stock_list=set([])\n",
    "buy_date={}\n",
    "sell_date={}\n",
    "postion=set([])\n",
    "\n",
    "for i in range(0,len(time_i),30):\n",
    "    stock_chi=stock_daily[(stock_daily.date==time_i[i+1])&(stock_daily.open!=stock_daily.close)][\"股票代码\"].tolist()\n",
    "    stock_daily_z=stock_daily[(stock_daily.date==time_i[i])&stock_daily[\"股票代码\"].isin(stock_chi)]\n",
    "    \n",
    "    s_0=stock_daily_z.sort_values(\"总市值(万元)\")[\"股票代码\"].tolist()\n",
    "    df_0=pd.Series(range(0,len(s_0)),index=s_0)\n",
    "    s_1=stock_daily_z.sort_values(\"市盈率(静态)\",ascending=False)[\"股票代码\"].tolist()\n",
    "    df_1=pd.Series(range(0,len(s_1)),index=s_1)\n",
    "    stock_list_z=(df_0+df_1).sort_values().head(5).index.tolist()\n",
    "    \n",
    "    stock_list=stock_list|set(stock_list_z)\n",
    "    buy_date.update({str(time_i[i].date()):stock_list_z})\n",
    "    sell_date.update({str(time_i[i].date()):list(postion-set(stock_list_z))})\n",
    "    postion=set(stock_list_z)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 8,
   "id": "dfa3bc41",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "2018-01-02 2023-02-10\n",
      "初始资金: 1000000.00\n",
      "2018-01-03, 买入300354.SZ, 成交量4436，成交价40.60\n",
      "2018-01-03, 买入300211.SZ, 成交量4007，成交价45.04\n",
      "2018-01-03, 买入300126.SZ, 成交量6771，成交价26.50\n",
      "2018-01-03, 买入300442.SZ, 成交量8358，成交价21.67\n",
      "2018-01-03, 买入300093.SZ, 成交量8713，成交价20.68\n",
      "2018-02-14, 卖出300211.SZ, 成交量-4007，成交价38.53\n",
      "2018-02-14, 卖出300442.SZ, 成交量-8358，成交价17.59\n",
      "2018-02-14, 买入300354.SZ, 成交量188，成交价31.57\n",
      "2018-02-14, 买入300220.SZ, 成交量3313，成交价43.67\n",
      "2018-02-14, 买入300093.SZ, 成交量1333，成交价14.65\n",
      "2018-02-14, 买入300404.SZ, 成交量5352，成交价27.23\n",
      "2018-02-14, 卖出300126.SZ, 成交量-48，成交价21.53\n",
      "2018-04-04, 卖出300220.SZ, 成交量-3313，成交价52.17\n",
      "2018-04-04, 卖出300404.SZ, 成交量-5352，成交价44.38\n",
      "2018-04-04, 卖出300354.SZ, 成交量-276，成交价44.34\n",
      "2018-04-04, 买入300093.SZ, 成交量1197，成交价16.09\n",
      "2018-04-04, 买入300092.SZ, 成交量9406，成交价19.34\n",
      "2018-04-04, 买入300211.SZ, 成交量4272，成交价42.51\n",
      "2018-04-04, 买入300126.SZ, 成交量753，成交价24.04\n",
      "2018-05-22, 卖出300093.SZ, 成交量-11243，成交价15.87\n",
      "2018-05-22, 买入300354.SZ, 成交量380，成交价37.70\n",
      "2018-05-22, 买入300126.SZ, 成交量249，成交价22.84\n",
      "2018-05-22, 买入300330.SZ, 成交量7863，成交价22.84\n",
      "2018-05-22, 卖出300211.SZ, 成交量-66，成交价42.26\n",
      "2018-05-22, 卖出300092.SZ, 成交量-564，成交价20.01\n",
      "2018-07-04, 买入300354.SZ, 成交量11，成交价31.60\n",
      "2018-07-04, 买入300126.SZ, 成交量165，成交价19.02\n",
      "2018-07-04, 买入300211.SZ, 成交量141，成交价34.27\n",
      "2018-07-04, 买入300092.SZ, 成交量470，成交价16.05\n",
      "2018-07-04, 卖出300330.SZ, 成交量-262，成交价19.89\n",
      "2018-08-15, 卖出300126.SZ, 成交量-7890，成交价19.68\n",
      "2018-08-15, 卖出300211.SZ, 成交量-4347，成交价34.78\n",
      "2018-08-15, 买入300354.SZ, 成交量138，成交价30.51\n",
      "2018-08-15, 买入300330.SZ, 成交量516，成交价18.35\n",
      "2018-08-15, 买入300483.SZ, 成交量6211，成交价23.92\n",
      "2018-08-15, 买入300268.SZ, 成交量6072，成交价24.16\n",
      "2018-08-15, 卖出300092.SZ, 成交量-95，成交价16.05\n",
      "2018-09-27, 卖出300092.SZ, 成交量-9217，成交价19.67\n",
      "2018-09-27, 卖出300483.SZ, 成交量-6211，成交价27.07\n",
      "2018-09-27, 买入300354.SZ, 成交量325，成交价29.75\n",
      "2018-09-27, 买入300268.SZ, 成交量549，成交价23.31\n",
      "2018-09-27, 买入300126.SZ, 成交量8357，成交价18.44\n",
      "2018-09-27, 买入300330.SZ, 成交量832，成交价17.31\n",
      "2018-09-27, 买入300211.SZ, 成交量4726，成交价32.74\n",
      "2018-11-15, 卖出300126.SZ, 成交量-8357，成交价20.99\n",
      "2018-11-15, 买入300268.SZ, 成交量637，成交价21.16\n",
      "2018-11-15, 买入300354.SZ, 成交量30，成交价29.23\n",
      "2018-11-15, 买入300330.SZ, 成交量118，成交价16.88\n",
      "2018-11-15, 买入300211.SZ, 成交量90，成交价31.85\n",
      "2018-11-15, 买入300442.SZ, 成交量10695，成交价14.51\n",
      "2018-12-27, 卖出300442.SZ, 成交量-10695，成交价13.25\n",
      "2018-12-27, 买入300354.SZ, 成交量309，成交价26.65\n",
      "2018-12-27, 买入300330.SZ, 成交量519，成交价15.43\n",
      "2018-12-27, 卖出300268.SZ, 成交量-668，成交价22.72\n",
      "2018-12-27, 卖出300211.SZ, 成交量-140，成交价31.60\n",
      "2018-12-27, 买入300092.SZ, 成交量9414，成交价15.71\n",
      "2019-02-18, 卖出300092.SZ, 成交量-9414，成交价17.60\n",
      "2019-02-18, 卖出300268.SZ, 成交量-6590，成交价26.74\n",
      "2019-02-18, 买入300354.SZ, 成交量53，成交价28.40\n",
      "2019-02-18, 买入300330.SZ, 成交量672，成交价15.49\n",
      "2019-02-18, 买入300211.SZ, 成交量125，成交价33.00\n",
      "2019-02-18, 买入300442.SZ, 成交量12468，成交价12.80\n",
      "2019-02-18, 买入300126.SZ, 成交量8178，成交价19.95\n",
      "2019-04-01, 卖出300211.SZ, 成交量-4801，成交价45.74\n",
      "2019-04-01, 买入300354.SZ, 成交量23，成交价35.43\n",
      "2019-04-01, 卖出300330.SZ, 成交量-587，成交价20.46\n",
      "2019-04-01, 买入300442.SZ, 成交量750，成交价15.01\n",
      "2019-04-01, 买入300235.SZ, 成交量5227，成交价37.77\n",
      "2019-04-01, 卖出300126.SZ, 成交量-215，成交价24.94\n",
      "2019-05-17, 卖出300235.SZ, 成交量-5227，成交价35.85\n",
      "2019-05-17, 卖出300442.SZ, 成交量-13218，成交价14.30\n",
      "2019-05-17, 卖出300126.SZ, 成交量-7963，成交价23.35\n",
      "2019-05-17, 卖出300330.SZ, 成交量-9671，成交价18.85\n",
      "2019-05-17, 卖出300354.SZ, 成交量-5617，成交价36.58\n",
      "2019-05-17, 买入300489.SZ, 成交量5509，成交价34.06\n",
      "2019-05-17, 买入300680.SZ, 成交量9714，成交价19.50\n",
      "2019-05-17, 买入300254.SZ, 成交量15189，成交价12.38\n",
      "2019-05-17, 买入300092.SZ, 成交量9464，成交价19.83\n",
      "2019-05-17, 买入300211.SZ, 成交量4734，成交价43.43\n",
      "2019-07-01, 卖出300211.SZ, 成交量-4734，成交价43.75\n",
      "2019-07-01, 卖出300489.SZ, 成交量-14，成交价34.94\n",
      "2019-07-01, 卖出300680.SZ, 成交量-526，成交价20.10\n",
      "2019-07-01, 买入300254.SZ, 成交量989，成交价11.88\n",
      "2019-07-01, 买入300092.SZ, 成交量354，成交价19.65\n",
      "2019-07-01, 买入300141.SZ, 成交量5649，成交价33.95\n",
      "2019-08-12, 买入300680.SZ, 成交量177，成交价18.63\n",
      "2019-08-12, 卖出300489.SZ, 成交量-346，成交价33.86\n",
      "2019-08-12, 买入300092.SZ, 成交量535，成交价16.94\n",
      "2019-08-12, 卖出300254.SZ, 成交量-473，成交价11.10\n",
      "2019-08-12, 买入300141.SZ, 成交量406，成交价28.69\n",
      "2019-09-24, 卖出300680.SZ, 成交量-219，成交价21.19\n",
      "2019-09-24, 卖出300489.SZ, 成交量-162，成交价38.47\n",
      "2019-09-24, 买入300092.SZ, 成交量130，成交价18.45\n",
      "2019-09-24, 卖出300254.SZ, 成交量-55，成交价12.36\n",
      "2019-09-24, 卖出300141.SZ, 成交量-41，成交价31.93\n",
      "2019-11-12, 卖出300680.SZ, 成交量-11，成交价19.65\n",
      "2019-11-12, 买入300489.SZ, 成交量153，成交价35.10\n",
      "2019-11-12, 卖出300092.SZ, 成交量-128，成交价17.55\n",
      "2019-11-12, 买入300254.SZ, 成交量179，成交价11.40\n",
      "2019-11-12, 买入300141.SZ, 成交量66，成交价29.63\n",
      "2019-12-24, 卖出300680.SZ, 成交量-524，成交价21.96\n",
      "2019-12-24, 卖出300489.SZ, 成交量-210，成交价38.49\n",
      "2019-12-24, 买入300141.SZ, 成交量328，成交价29.58\n",
      "2019-12-24, 买入300254.SZ, 成交量345，成交价11.67\n",
      "2019-12-24, 买入300092.SZ, 成交量61，成交价18.14\n",
      "2020-02-13, 卖出300254.SZ, 成交量-16174，成交价13.31\n",
      "2020-02-13, 买入300680.SZ, 成交量1029，成交价20.42\n",
      "2020-02-13, 买入300092.SZ, 成交量1312，成交价16.81\n",
      "2020-02-13, 买入300141.SZ, 成交量122，成交价29.96\n",
      "2020-02-13, 买入300539.SZ, 成交量13229，成交价14.90\n",
      "2020-02-13, 卖出300489.SZ, 成交量-707，成交价47.08\n",
      "2020-03-26, 卖出300489.SZ, 成交量-4223，成交价74.22\n",
      "2020-03-26, 卖出300141.SZ, 成交量-6530，成交价53.91\n",
      "2020-03-26, 卖出300539.SZ, 成交量-13229，成交价15.57\n",
      "2020-03-26, 买入300254.SZ, 成交量21696，成交价11.67\n",
      "2020-03-26, 买入300721.SZ, 成交量11492，成交价21.80\n",
      "2020-03-26, 买入300680.SZ, 成交量270，成交价27.20\n",
      "2020-03-26, 买入300092.SZ, 成交量1237，成交价19.55\n",
      "2020-03-26, 买入300022.SZ, 成交量15831，成交价16.09\n",
      "2020-05-13, 卖出300680.SZ, 成交量-9910，成交价24.62\n",
      "2020-05-13, 卖出300092.SZ, 成交量-12965，成交价18.22\n",
      "2020-05-13, 卖出300022.SZ, 成交量-15831，成交价21.81\n",
      "2020-05-13, 买入300254.SZ, 成交量3803，成交价9.99\n",
      "2020-05-13, 买入300330.SZ, 成交量13423，成交价19.05\n",
      "2020-05-13, 买入300721.SZ, 成交量2288，成交价18.29\n",
      "2020-05-13, 买入300312.SZ, 成交量16162，成交价15.71\n",
      "2020-05-13, 买入300555.SZ, 成交量12066，成交价21.19\n",
      "2020-06-24, 卖出300330.SZ, 成交量-13423，成交价22.60\n",
      "2020-06-24, 买入300312.SZ, 成交量5250，成交价12.22\n",
      "2020-06-24, 买入300254.SZ, 成交量539，成交价10.16\n",
      "2020-06-24, 买入300153.SZ, 成交量11760，成交价22.44\n",
      "2020-06-24, 买入300555.SZ, 成交量507，成交价21.02\n",
      "2020-06-24, 卖出300721.SZ, 成交量-1251，成交价21.13\n",
      "2020-08-07, 卖出300721.SZ, 成交量-12529，成交价24.59\n",
      "2020-08-07, 买入300153.SZ, 成交量568，成交价24.48\n",
      "2020-08-07, 卖出300312.SZ, 成交量-1541，成交价15.01\n",
      "2020-08-07, 卖出300254.SZ, 成交量-867，成交价11.68\n",
      "2020-08-07, 买入300555.SZ, 成交量334，成交价23.29\n",
      "2020-08-07, 买入300330.SZ, 成交量11526，成交价26.05\n",
      "2020-09-18, 买入300254.SZ, 成交量1275，成交价13.16\n",
      "2020-09-18, 卖出300153.SZ, 成交量-713，成交价29.50\n",
      "2020-09-18, 买入300555.SZ, 成交量699，成交价25.53\n",
      "2020-09-18, 买入300330.SZ, 成交量1120，成交价27.41\n",
      "2020-09-18, 卖出300312.SZ, 成交量-3367，成交价20.56\n",
      "2020-11-09, 卖出300153.SZ, 成交量-11615，成交价46.77\n",
      "2020-11-09, 卖出300312.SZ, 成交量-16504，成交价26.53\n",
      "2020-11-09, 买入300330.SZ, 成交量2837，成交价26.65\n",
      "2020-11-09, 买入300254.SZ, 成交量4824，成交价12.94\n",
      "2020-11-09, 买入300555.SZ, 成交量157，成交价29.87\n",
      "2020-11-09, 买入300721.SZ, 成交量13374，成交价30.47\n",
      "2020-11-09, 买入300592.SZ, 成交量21006，成交价19.15\n",
      "2020-12-21, 卖出300721.SZ, 成交量-13374，成交价32.00\n",
      "2020-12-21, 卖出300592.SZ, 成交量-21006，成交价17.92\n",
      "2020-12-21, 买入300330.SZ, 成交量1047，成交价22.23\n",
      "2020-12-21, 买入300254.SZ, 成交量3660，成交价10.49\n",
      "2020-12-21, 买入300312.SZ, 成交量20670，成交价18.07\n",
      "2020-12-21, 买入300555.SZ, 成交量862，成交价25.15\n",
      "2020-12-21, 买入300211.SZ, 成交量8424，成交价41.98\n",
      "2021-02-02, 卖出300211.SZ, 成交量-8424，成交价55.79\n",
      "2021-02-02, 买入300555.SZ, 成交量2190，成交价18.70\n",
      "2021-02-02, 买入300330.SZ, 成交量877，成交价17.86\n",
      "2021-02-02, 买入300153.SZ, 成交量14072，成交价22.12\n",
      "2021-02-02, 买入300254.SZ, 成交量4707，成交价7.96\n",
      "2021-02-02, 买入300312.SZ, 成交量9701，成交价10.37\n",
      "2021-03-23, 买入300153.SZ, 成交量1380，成交价25.26\n",
      "2021-03-23, 买入300254.SZ, 成交量2887，成交价8.98\n",
      "2021-03-23, 买入300330.SZ, 成交量2229，成交价19.46\n",
      "2021-03-23, 买入300555.SZ, 成交量1473，成交价20.92\n",
      "2021-03-23, 卖出300312.SZ, 成交量-9664，成交价18.40\n",
      "2021-05-10, 卖出300254.SZ, 成交量-42524，成交价10.22\n",
      "2021-05-10, 卖出300153.SZ, 成交量-15452，成交价28.76\n",
      "2021-05-10, 卖出300312.SZ, 成交量-20707，成交价9.40\n",
      "2021-05-10, 买入300700.SZ, 成交量24851，成交价14.69\n",
      "2021-05-10, 买入300807.SZ, 成交量15607，成交价23.41\n",
      "2021-05-10, 卖出300330.SZ, 成交量-74，成交价18.77\n",
      "2021-05-10, 卖出300555.SZ, 成交量-945，成交价22.25\n",
      "2021-05-10, 买入300345.SZ, 成交量22670，成交价16.46\n",
      "2021-06-22, 卖出300345.SZ, 成交量-22670，成交价24.56\n",
      "2021-06-22, 买入300700.SZ, 成交量880，成交价17.61\n",
      "2021-06-22, 买入300534.SZ, 成交量21200，成交价21.29\n",
      "2021-06-22, 买入300807.SZ, 成交量759，成交价27.65\n",
      "2021-06-22, 买入300555.SZ, 成交量782，成交价24.93\n",
      "2021-06-22, 卖出300330.SZ, 成交量-186，成交价23.14\n",
      "2021-08-03, 卖出300330.SZ, 成交量-19376，成交价23.06\n",
      "2021-08-03, 卖出300700.SZ, 成交量-962，成交价18.62\n",
      "2021-08-03, 买入300807.SZ, 成交量1140，成交价26.06\n",
      "2021-08-03, 买入300555.SZ, 成交量760，成交价24.52\n",
      "2021-08-03, 卖出300534.SZ, 成交量-1900，成交价23.58\n",
      "2021-08-03, 买入300313.SZ, 成交量36645，成交价12.47\n",
      "2021-09-14, 卖出300313.SZ, 成交量-36645，成交价20.53\n",
      "2021-09-14, 买入300700.SZ, 成交量2188，成交价18.66\n",
      "2021-09-14, 买入300807.SZ, 成交量2803，成交价24.51\n",
      "2021-09-14, 买入300555.SZ, 成交量3520，成交价22.28\n",
      "2021-09-14, 买入300534.SZ, 成交量1074，成交价24.53\n",
      "2021-09-14, 买入300330.SZ, 成交量22324，成交价22.56\n",
      "2021-11-04, 卖出300700.SZ, 成交量-201，成交价16.40\n",
      "2021-11-04, 卖出300807.SZ, 成交量-780，成交价22.80\n",
      "2021-11-04, 买入300534.SZ, 成交量2762，成交价19.18\n",
      "2021-11-04, 买入300330.SZ, 成交量301，成交价19.44\n",
      "2021-12-16, 买入300700.SZ, 成交量1532，成交价18.31\n",
      "2021-12-16, 买入300534.SZ, 成交量495，成交价21.64\n",
      "2021-12-16, 卖出300555.SZ, 成交量-34，成交价22.98\n",
      "2021-12-16, 买入300330.SZ, 成交量2379，成交价20.50\n",
      "2021-12-16, 卖出300807.SZ, 成交量-3849，成交价32.41\n",
      "2022-01-28, 卖出300534.SZ, 成交量-23631，成交价36.70\n",
      "2022-01-28, 买入300807.SZ, 成交量8364，成交价23.81\n",
      "2022-01-28, 买入300555.SZ, 成交量5133，成交价20.87\n",
      "2022-01-28, 买入300330.SZ, 成交量4198，成交价19.68\n",
      "2022-01-28, 卖出300700.SZ, 成交量-4563，成交价23.03\n",
      "2022-01-28, 买入300313.SZ, 成交量44521，成交价12.81\n",
      "2022-03-18, 卖出300330.SZ, 成交量-29202，成交价26.09\n",
      "2022-03-18, 买入300555.SZ, 成交量2928，成交价20.56\n",
      "2022-03-18, 买入300313.SZ, 成交量5256，成交价12.71\n",
      "2022-03-18, 卖出300807.SZ, 成交量-3462，成交价29.83\n",
      "2022-03-18, 买入300700.SZ, 成交量2403，成交价23.73\n",
      "2022-03-18, 买入300615.SZ, 成交量24325，成交价25.74\n",
      "2022-05-06, 卖出300313.SZ, 成交量-49777，成交价10.03\n",
      "2022-05-06, 卖出300807.SZ, 成交量-20582，成交价19.14\n",
      "2022-05-06, 卖出300555.SZ, 成交量-30432，成交价17.66\n",
      "2022-05-06, 卖出300700.SZ, 成交量-26128，成交价23.07\n",
      "2022-05-06, 卖出300615.SZ, 成交量-24325，成交价22.31\n",
      "2022-05-06, 买入300321.SZ, 成交量16940，成交价30.47\n",
      "2022-05-06, 买入300594.SZ, 成交量36431，成交价14.33\n",
      "2022-05-06, 买入300736.SZ, 成交量24204，成交价22.00\n",
      "2022-05-06, 买入300521.SZ, 成交量27026，成交价19.07\n",
      "2022-05-06, 买入300637.SZ, 成交量41036，成交价12.79\n",
      "2022-06-20, 卖出300321.SZ, 成交量-217，成交价34.85\n",
      "2022-06-20, 卖出300594.SZ, 成交量-1744，成交价16.72\n",
      "2022-06-20, 买入300521.SZ, 成交量1772，成交价19.85\n",
      "2022-06-20, 卖出300736.SZ, 成交量-356，成交价23.97\n",
      "2022-06-20, 卖出300637.SZ, 成交量-549，成交价14.12\n",
      "2022-08-01, 买入300321.SZ, 成交量547，成交价36.73\n",
      "2022-08-01, 卖出300594.SZ, 成交量-1464，成交价18.78\n",
      "2022-08-01, 卖出300521.SZ, 成交量-1463，成交价23.63\n",
      "2022-08-01, 买入300736.SZ, 成交量872，成交价25.38\n",
      "2022-08-01, 卖出300637.SZ, 成交量-662，成交价15.78\n",
      "2022-09-13, 卖出300321.SZ, 成交量-414，成交价36.67\n",
      "2022-09-13, 买入300594.SZ, 成交量3187，成交价16.92\n",
      "2022-09-13, 买入300521.SZ, 成交量2695，成交价20.56\n",
      "2022-09-13, 卖出300736.SZ, 成交量-3364，成交价28.70\n",
      "2022-09-13, 买入300637.SZ, 成交量688，成交价15.13\n",
      "2022-11-01, 买入300321.SZ, 成交量964，成交价32.47\n",
      "2022-11-01, 买入300594.SZ, 成交量214，成交价15.75\n",
      "2022-11-01, 卖出300521.SZ, 成交量-358，成交价19.45\n",
      "2022-11-01, 卖出300736.SZ, 成交量-775，成交价28.29\n",
      "2022-11-01, 买入300637.SZ, 成交量983，成交价13.90\n",
      "2022-12-13, 卖出300736.SZ, 成交量-20581，成交价37.85\n",
      "2022-12-13, 买入300321.SZ, 成交量1029，成交价34.74\n",
      "2022-12-13, 买入300521.SZ, 成交量4928，成交价18.90\n",
      "2022-12-13, 买入300637.SZ, 成交量4510，成交价14.32\n",
      "2022-12-13, 卖出300594.SZ, 成交量-5745，成交价20.85\n",
      "2022-12-13, 买入300126.SZ, 成交量28944，成交价22.52\n",
      "2023-02-01, 卖出300126.SZ, 成交量-28944，成交价24.07\n",
      "2023-02-01, 买入300321.SZ, 成交量896，成交价35.42\n",
      "2023-02-01, 买入300637.SZ, 成交量3430，成交价14.02\n",
      "2023-02-01, 卖出300521.SZ, 成交量-5169，成交价23.74\n",
      "2023-02-01, 买入300594.SZ, 成交量1074，成交价21.84\n",
      "2023-02-01, 买入300405.SZ, 成交量32205，成交价21.64\n",
      "最终资金: 4112212.28\n",
      "夏普比率: OrderedDict([('sharperatio', 0.848877334484384)])\n",
      "回撤指标: AutoOrderedDict([('len', 0), ('drawdown', 0.0), ('moneydown', 0.0), ('max', AutoOrderedDict([('len', 219), ('drawdown', 34.53955612268644), ('moneydown', 1140425.9645316)]))])\n"
     ]
    }
   ],
   "source": [
    "start=datetime(2018,1,2)\n",
    "end=datetime(2023,2,10)\n",
    "stock_daily_part=stock_daily[(stock_daily[\"date\"]>=start)&(stock_daily[\"date\"]<=end)].copy()\n",
    "result=huice_run_num(start,end,buy_date,sell_date,stock_daily_part,stock_list,my_strategy_date_2)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 110,
   "id": "968cd3b2",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<Axes: xlabel='日期'>"
      ]
     },
     "execution_count": 110,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAABaUAAAFvCAYAAABaeKf+AAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjcuMCwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy88F64QAAAACXBIWXMAAA9hAAAPYQGoP6dpAADSKUlEQVR4nOzdd3hU1dbH8e+k94SQQiCh9y5VRUWRpiJiF7Fce+9eFa96m++1e7n2hh272MUGCCi9t9AJEFoq6X3m/WNncjJppNff53nm2fvss885e0IsrFmzts3hcDgQEREREREREREREWkEbk29ABERERERERERERFpOxSUFhEREREREREREZFGo6C0iIiIiIiIiIiIiDQaBaVFREREREREREREpNEoKC0iIiIiIiIiIiIijUZBaRERERERERERERFpNApKi4iIiIiIiIiIiEij8WjqBRyP3W7n0KFDBAYGYrPZmno5IiIiIiIiIiIiIlIBh8NBRkYGHTt2xM2t8nzoZh+UPnToEDExMU29DBERERERERERERGphgMHDhAdHV3p+WYflA4MDATMGwkKCmri1YiIiIiIiIiIiIhIRdLT04mJiSmJ6Vam2QelnSU7goKCFJQWERERERERERERaeaOV4ZZGx2KiIiIiIiIiIiISKNRUFpEREREREREREREGo2C0iIiIiIiIiIiIiLSaBSUFhEREREREREREZFGo6C0iIiIiIiIiIiIiDQaBaVFREREREREREREpNEoKC0iIiIiIiIiIiIijUZBaRERERERERERERFpNApKi4iIiIiIiIiIiEijUVBaREREREREREREpD5kHIGigqZeRbOnoLSIiIiIiIiIiIhIffjmNniuL+z8talX0qx5NPUCRERERERERERERFq89EOwewE47BDavalX06wpU1pERERERERERESkrjZ+agLSnU+C9j2aejXNmoLSIiIiIiIiIiIiInW14VPTDr28adfRAigoLSIiIiIiIiIiIlIXqfsgMRZs7tDv3KZeTbOnoLSIiIiIiIiIiIhIXewq3tgwZhT4tmvatbQACkqLiIiIiIiIiIiI1MXO30zba0LTrqOFqHVQevLkybz77rvHnbdo0SL69etHWFgYzz//fG0fJyIiIiIiIiIiItI85KRCVrLpZ6fA7gWm32ti062pBalVUHrOnDn8/PPPx52XmJjI1KlTmT59OsuWLWPOnDksXLiwNo8UERERERERERERaXqF+fD6WHhlNOSmwfo5UJQHHQZD5MCmXl2L4FHTC1JSUrjvvvvo06fPcefOmTOHqKgoHn30UWw2G4899hizZ8/mjDPOqPSavLw88vLySo7T09NrukQRERERERERERGRhrF/GRzbZ/pbv4GVb5j+yOvAZmu6dbUgNc6Uvu+++zj//PM58cQTjzt3w4YNjBs3DlvxH8aoUaNYu3Ztldc88cQTBAcHl7xiYmJqukQRERERERERERGRhrHjJ6v/7R1wbD8EdoRBFzfdmlqYGgWlFy5cyPz583nqqaeqNT89PZ1u3bqVHAcFBXHw4MEqr5k5cyZpaWklrwMHDtRkiSIiIiIiIiIiIiINZ/u88mNTXwQv/8ZfSwtV7fIdubm53HTTTbz66qsEBQVV7+YeHnh7e5cc+/j4kJ2dXeU13t7eLteIiIiIiIiIiIiINAvZKZC61/SDYyDnGJz9NPQa36TLammqHZT+97//zciRIznnnHOqffPQ0FASExNLjjMyMvDy8qrZCkVERERERERERESaA2ct6YBIuGMN2AuVIV0L1Q5Kf/TRRyQmJhISEgJAdnY2n332GStXruSVV16p8JqRI0fy8ccflxyvX7+eTp061W3FIiIiIiIiIiIiIk3h2H7ThnQGD29AFR9qo9pB6SVLllBYWFhyfP/993PiiSfyl7/8hfT0dHx9ffH09HS5ZurUqdx2220sXLiQU089lWeffZZJkybV3+pFREREREREREREGktqcaZ0SJemXUcLV+2gdHR0tMtxQEAAYWFhhIWF0bVrV2bNmsW0adNc5oSFhfHcc88xadIkgoOD8ff3Z/bs2fWycBEREREREREREZFGVTpTWmqt2kHpst59992SflxcXKXzbr31ViZOnEhsbCxjx46t9iaJIiIiIiIiIiIiIs2KgtL1otZB6Zro2bMnPXv2bIxHiYiIiIiIiIiIiDQM50aH7VS+oy7cmnoBIiIiIiIiIiIiIs2ew1EqU1pB6bpQUFpERERERERERETkeA6ugYJs8PCB4Ojjz5dKKSgtIiIiIiIiIiIicjyr3zFt/2ng4d2kS2npFJQWEREREREREWnu0g7C59fA/hVNvRKRtikrGTZ/afojrm3atbQCCkqLiIiIiIiIiDR3P94PW+bC2xOb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\n",
      "text/plain": [
       "<Figure size 1800x400 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "index_time_scale=index_time/index_time.iloc[0]\n",
    "index_time_scale.plot(figsize=(18,4))\n",
    "cash_value=pd.Series(result)/1000000\n",
    "cash_value.plot()"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "2a178f19",
   "metadata": {},
   "source": [
    "## 实现因子数量及其权重的任意定制"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "c31e3a19",
   "metadata": {},
   "source": []
  },
  {
   "cell_type": "code",
   "execution_count": 86,
   "id": "41b645e7",
   "metadata": {},
   "outputs": [],
   "source": [
    "stock_columns={'总市值(万元)':[True,0.9],'市盈率(静态)':[False,1],'换手率(%)':[True,0.3]}"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 98,
   "id": "e196a8b4",
   "metadata": {},
   "outputs": [],
   "source": [
    "time_i=stock_daily.date.sort_values().unique()\n",
    "top_num=5\n",
    "\n",
    "stock_list=set([])\n",
    "buy_date={}\n",
    "sell_date={}\n",
    "postion=set([])\n",
    "\n",
    "for i in range(0,len(time_i),30):\n",
    "    stock_chi=stock_daily[(stock_daily.date==time_i[i+1])&(stock_daily.open!=stock_daily.close)][\"股票代码\"].tolist()\n",
    "    stock_oneday=stock_daily[(stock_daily.date==time_i[i])&stock_daily[\"股票代码\"].isin(stock_chi)]\n",
    "    z1=stock_oneday[s_list[0]].rank(ascending=stock_columns[s_list[0]][0])*stock_columns[s_list[0]][1]\n",
    "    for j in s_list[1:]:\n",
    "        z1=z1+stock_oneday[j].rank(ascending=stock_columns[j][0])*stock_columns[j][1]\n",
    "    stock_list_z=pd.concat([stock_oneday[\"股票代码\"],z1],axis=1).sort_values(0)[\"股票代码\"].head(top_num).tolist()\n",
    "\n",
    "    stock_list=stock_list|set(stock_list_z)\n",
    "    buy_date.update({str(time_i[i].date()):stock_list_z})\n",
    "    sell_date.update({str(time_i[i].date()):list(postion-set(stock_list_z))})\n",
    "    postion=set(stock_list_z)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 99,
   "id": "e6a6e7b7",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "2018-01-02 2023-02-10\n",
      "初始资金: 1000000.00\n",
      "2018-01-03, 买入300211.SZ, 成交量4007，成交价45.04\n",
      "2018-01-03, 买入300442.SZ, 成交量8358，成交价21.67\n",
      "2018-01-03, 买入300354.SZ, 成交量4436，成交价40.60\n",
      "2018-01-03, 买入300126.SZ, 成交量6771，成交价26.50\n",
      "2018-01-03, 买入300093.SZ, 成交量8713，成交价20.68\n",
      "2018-02-14, 卖出300093.SZ, 成交量-8713，成交价14.65\n",
      "2018-02-14, 卖出300442.SZ, 成交量-48，成交价17.59\n",
      "2018-02-14, 买入300354.SZ, 成交量188，成交价31.57\n",
      "2018-02-14, 卖出300211.SZ, 成交量-204，成交价38.53\n",
      "2018-02-14, 买入300220.SZ, 成交量3313，成交价43.67\n",
      "2018-02-14, 卖出300126.SZ, 成交量-48，成交价21.53\n",
      "2018-04-04, 卖出300220.SZ, 成交量-3313，成交价52.17\n",
      "2018-04-04, 卖出300354.SZ, 成交量-4624，成交价44.34\n",
      "2018-04-04, 卖出300442.SZ, 成交量-8310，成交价20.10\n",
      "2018-04-04, 买入300126.SZ, 成交量255，成交价24.04\n",
      "2018-04-04, 买入300092.SZ, 成交量8779，成交价19.34\n",
      "2018-04-04, 买入300313.SZ, 成交量8083，成交价21.38\n",
      "2018-04-04, 买入300211.SZ, 成交量184，成交价42.51\n",
      "2018-04-04, 买入300483.SZ, 成交量4755，成交价35.46\n",
      "2018-05-22, 卖出300313.SZ, 成交量-8083，成交价22.54\n",
      "2018-05-22, 卖出300092.SZ, 成交量-8779，成交价20.01\n",
      "2018-05-22, 卖出300483.SZ, 成交量-4755，成交价39.04\n",
      "2018-05-22, 买入300330.SZ, 成交量7744，成交价22.84\n",
      "2018-05-22, 买入300126.SZ, 成交量630，成交价22.84\n",
      "2018-05-22, 买入300442.SZ, 成交量8566，成交价20.48\n",
      "2018-05-22, 买入300211.SZ, 成交量154，成交价42.26\n",
      "2018-05-22, 买入300283.SZ, 成交量5404，成交价32.48\n",
      "2018-07-04, 卖出300283.SZ, 成交量-5404，成交价28.17\n",
      "2018-07-04, 卖出300211.SZ, 成交量-4141，成交价34.27\n",
      "2018-07-04, 买入300126.SZ, 成交量246，成交价19.02\n",
      "2018-07-04, 买入300092.SZ, 成交量9270，成交价16.05\n",
      "2018-07-04, 买入300442.SZ, 成交量392，成交价16.71\n",
      "2018-07-04, 卖出300330.SZ, 成交量-177，成交价19.89\n",
      "2018-07-04, 买入300483.SZ, 成交量5363，成交价27.86\n",
      "2018-08-15, 卖出300092.SZ, 成交量-9270，成交价16.05\n",
      "2018-08-15, 买入300211.SZ, 成交量4064，成交价34.78\n",
      "2018-08-15, 买入300330.SZ, 成交量213，成交价18.35\n",
      "2018-08-15, 买入300483.SZ, 成交量590，成交价23.92\n",
      "2018-08-15, 卖出300126.SZ, 成交量-647，成交价19.68\n",
      "2018-08-15, 买入300442.SZ, 成交量178，成交价15.58\n",
      "2018-09-27, 卖出300483.SZ, 成交量-5953，成交价27.07\n",
      "2018-09-27, 买入300211.SZ, 成交量216，成交价32.74\n",
      "2018-09-27, 买入300330.SZ, 成交量325，成交价17.31\n",
      "2018-09-27, 买入300126.SZ, 成交量361，成交价18.44\n",
      "2018-09-27, 买入300442.SZ, 成交量208，成交价15.04\n",
      "2018-09-27, 买入300354.SZ, 成交量4712，成交价29.75\n",
      "2018-11-15, 卖出300126.SZ, 成交量-7568，成交价20.99\n",
      "2018-11-15, 卖出300354.SZ, 成交量-4712，成交价29.23\n",
      "2018-11-15, 买入300442.SZ, 成交量444，成交价14.51\n",
      "2018-11-15, 买入300483.SZ, 成交量4963，成交价28.53\n",
      "2018-11-15, 买入300211.SZ, 成交量128，成交价31.85\n",
      "2018-11-15, 买入300141.SZ, 成交量4530，成交价31.28\n",
      "2018-11-15, 买入300330.SZ, 成交量193，成交价16.88\n",
      "2018-12-27, 卖出300141.SZ, 成交量-4530，成交价34.51\n",
      "2018-12-27, 卖出300483.SZ, 成交量-4963，成交价33.14\n",
      "2018-12-27, 卖出300330.SZ, 成交量-8298，成交价15.43\n",
      "2018-12-27, 卖出300211.SZ, 成交量-4408，成交价31.60\n",
      "2018-12-27, 买入300442.SZ, 成交量977，成交价13.25\n",
      "2018-12-27, 买入300268.SZ, 成交量6354，成交价22.72\n",
      "2018-12-27, 买入300354.SZ, 成交量5344，成交价26.65\n",
      "2018-12-27, 买入300030.SZ, 成交量6421，成交价22.25\n",
      "2018-12-27, 买入300092.SZ, 成交量9079，成交价15.71\n",
      "2019-02-18, 卖出300092.SZ, 成交量-9079，成交价17.60\n",
      "2019-02-18, 卖出300354.SZ, 成交量-5344，成交价28.40\n",
      "2019-02-18, 卖出300268.SZ, 成交量-6354，成交价26.74\n",
      "2019-02-18, 买入300442.SZ, 成交量951，成交价12.80\n",
      "2019-02-18, 买入300330.SZ, 成交量9640，成交价15.49\n",
      "2019-02-18, 买入300030.SZ, 成交量646，成交价21.19\n",
      "2019-02-18, 买入300483.SZ, 成交量4795，成交价31.06\n",
      "2019-02-18, 买入300489.SZ, 成交量6152，成交价24.26\n",
      "2019-04-01, 卖出300030.SZ, 成交量-7067，成交价26.14\n",
      "2019-04-01, 卖出300483.SZ, 成交量-4795，成交价34.94\n",
      "2019-04-01, 卖出300489.SZ, 成交量-6152，成交价30.93\n",
      "2019-04-01, 买入300268.SZ, 成交量5750，成交价31.24\n",
      "2019-04-01, 卖出300330.SZ, 成交量-855，成交价20.46\n",
      "2019-04-01, 买入300442.SZ, 成交量291，成交价15.01\n",
      "2019-04-01, 买入300277.SZ, 成交量4645，成交价38.69\n",
      "2019-04-01, 买入300105.SZ, 成交量6189，成交价29.12\n",
      "2019-05-17, 卖出300330.SZ, 成交量-8785，成交价18.85\n",
      "2019-05-17, 卖出300442.SZ, 成交量-12007，成交价14.30\n",
      "2019-05-17, 卖出300268.SZ, 成交量-5750，成交价30.71\n",
      "2019-05-17, 买入300489.SZ, 成交量4976，成交价34.06\n",
      "2019-05-17, 买入300092.SZ, 成交量8547，成交价19.83\n",
      "2019-05-17, 买入300105.SZ, 成交量132，成交价27.16\n",
      "2019-05-17, 买入300277.SZ, 成交量18，成交价36.55\n",
      "2019-05-17, 买入300629.SZ, 成交量6302，成交价26.90\n",
      "2019-07-01, 卖出300277.SZ, 成交量-4663，成交价37.35\n",
      "2019-07-01, 卖出300629.SZ, 成交量-6302，成交价36.23\n",
      "2019-07-01, 卖出300092.SZ, 成交量-8547，成交价19.65\n",
      "2019-07-01, 卖出300105.SZ, 成交量-6321，成交价33.45\n",
      "2019-07-01, 买入300141.SZ, 成交量5542，成交价33.95\n",
      "2019-07-01, 买入300093.SZ, 成交量13853，成交价13.65\n",
      "2019-07-01, 买入300254.SZ, 成交量15874，成交价11.88\n",
      "2019-07-01, 买入300489.SZ, 成交量414，成交价34.94\n",
      "2019-07-01, 买入300551.SZ, 成交量8234，成交价22.82\n",
      "2019-08-12, 卖出300093.SZ, 成交量-13853，成交价14.77\n",
      "2019-08-12, 卖出300551.SZ, 成交量-8234，成交价26.12\n",
      "2019-08-12, 买入300489.SZ, 成交量153，成交价33.86\n",
      "2019-08-12, 买入300141.SZ, 成交量977，成交价28.69\n",
      "2019-08-12, 买入300254.SZ, 成交量1033，成交价11.10\n",
      "2019-08-12, 买入300264.SZ, 成交量9831，成交价19.34\n",
      "2019-08-12, 买入300277.SZ, 成交量5523，成交价33.66\n",
      "2019-09-24, 卖出300264.SZ, 成交量-9831，成交价23.93\n",
      "2019-09-24, 卖出300277.SZ, 成交量-5523，成交价37.66\n",
      "2019-09-24, 买入300092.SZ, 成交量11537，成交价18.45\n",
      "2019-09-24, 卖出300489.SZ, 成交量-55，成交价38.47\n",
      "2019-09-24, 买入300254.SZ, 成交量316，成交价12.36\n",
      "2019-09-24, 买入300141.SZ, 成交量99，成交价31.93\n",
      "2019-09-24, 买入300105.SZ, 成交量7674，成交价27.58\n",
      "2019-11-12, 卖出300105.SZ, 成交量-7674，成交价24.55\n",
      "2019-11-12, 买入300489.SZ, 成交量99，成交价35.10\n",
      "2019-11-12, 卖出300092.SZ, 成交量-282，成交价17.55\n",
      "2019-11-12, 卖出300141.SZ, 成交量-9，成交价29.63\n",
      "2019-11-12, 卖出300254.SZ, 成交量-17，成交价11.40\n",
      "2019-11-12, 买入300334.SZ, 成交量12790，成交价15.47\n",
      "2019-12-24, 卖出300334.SZ, 成交量-12790，成交价15.70\n",
      "2019-12-24, 卖出300489.SZ, 成交量-320，成交价38.49\n",
      "2019-12-24, 买入300254.SZ, 成交量72，成交价11.67\n",
      "2019-12-24, 卖出300092.SZ, 成交量-128，成交价18.14\n",
      "2019-12-24, 买入300141.SZ, 成交量236，成交价29.58\n",
      "2019-12-24, 买入300105.SZ, 成交量8104，成交价25.15\n",
      "2020-02-13, 卖出300489.SZ, 成交量-5267，成交价47.08\n",
      "2020-02-13, 卖出300254.SZ, 成交量-17278，成交价13.31\n",
      "2020-02-13, 买入300092.SZ, 成交量1517，成交价16.81\n",
      "2020-02-13, 买入300539.SZ, 成交量14262，成交价14.90\n",
      "2020-02-13, 买入300141.SZ, 成交量195，成交价29.96\n",
      "2020-02-13, 买入300334.SZ, 成交量15698，成交价13.54\n",
      "2020-02-13, 买入300105.SZ, 成交量437，成交价24.85\n",
      "2020-03-26, 卖出300141.SZ, 成交量-7040，成交价53.91\n",
      "2020-03-26, 卖出300334.SZ, 成交量-15698，成交价15.58\n",
      "2020-03-26, 卖出300539.SZ, 成交量-14262，成交价15.57\n",
      "2020-03-26, 卖出300092.SZ, 成交量-12644，成交价19.55\n",
      "2020-03-26, 卖出300105.SZ, 成交量-8541，成交价29.54\n",
      "2020-03-26, 买入300254.SZ, 成交量22006，成交价11.67\n",
      "2020-03-26, 买入300518.SZ, 成交量12053，成交价21.31\n",
      "2020-03-26, 买入300402.SZ, 成交量30252，成交价8.51\n",
      "2020-03-26, 买入300022.SZ, 成交量16057，成交价16.09\n",
      "2020-03-26, 买入300211.SZ, 成交量5488，成交价46.58\n",
      "2020-05-13, 卖出300022.SZ, 成交量-16057，成交价21.81\n",
      "2020-05-13, 卖出300402.SZ, 成交量-30252，成交价8.50\n",
      "2020-05-13, 卖出300211.SZ, 成交量-5488，成交价46.52\n",
      "2020-05-13, 卖出300518.SZ, 成交量-12053，成交价22.51\n",
      "2020-05-13, 买入300254.SZ, 成交量4998，成交价9.99\n",
      "2020-05-13, 买入300330.SZ, 成交量14216，成交价19.05\n",
      "2020-05-13, 买入300557.SZ, 成交量10270，成交价25.99\n",
      "2020-05-13, 买入300539.SZ, 成交量18186，成交价14.79\n",
      "2020-05-13, 买入300442.SZ, 成交量17263，成交价15.63\n",
      "2020-06-24, 卖出300557.SZ, 成交量-10270，成交价29.62\n",
      "2020-06-24, 卖出300330.SZ, 成交量-14216，成交价22.60\n",
      "2020-06-24, 卖出300442.SZ, 成交量-17263，成交价18.52\n",
      "2020-06-24, 卖出300539.SZ, 成交量-18186，成交价15.50\n",
      "2020-06-24, 买入300153.SZ, 成交量13389，成交价22.44\n",
      "2020-06-24, 买入300254.SZ, 成交量2639，成交价10.16\n",
      "2020-06-24, 买入300211.SZ, 成交量7052，成交价42.76\n",
      "2020-06-24, 买入300152.SZ, 成交量18955，成交价15.91\n",
      "2020-06-24, 买入300405.SZ, 成交量18026，成交价16.73\n",
      "2020-08-07, 卖出300254.SZ, 成交量-29643，成交价11.68\n",
      "2020-08-07, 卖出300405.SZ, 成交量-18026，成交价19.67\n",
      "2020-08-07, 买入300153.SZ, 成交量361，成交价24.48\n",
      "2020-08-07, 买入300539.SZ, 成交量19616，成交价17.01\n",
      "2020-08-07, 买入300211.SZ, 成交量207，成交价46.28\n",
      "2020-08-07, 买入300126.SZ, 成交量13070，成交价25.78\n",
      "2020-08-07, 卖出300152.SZ, 成交量-46，成交价17.63\n",
      "2020-09-18, 卖出300126.SZ, 成交量-13070，成交价29.65\n",
      "2020-09-18, 卖出300539.SZ, 成交量-19616，成交价20.90\n",
      "2020-09-18, 卖出300152.SZ, 成交量-18909，成交价32.09\n",
      "2020-09-18, 买入300557.SZ, 成交量13488，成交价31.66\n",
      "2020-09-18, 买入300211.SZ, 成交量1047，成交价50.71\n",
      "2020-09-18, 买入300592.SZ, 成交量19413，成交价22.23\n",
      "2020-09-18, 买入300153.SZ, 成交量517，成交价29.50\n",
      "2020-09-18, 买入300698.SZ, 成交量23473，成交价18.20\n",
      "2020-11-09, 卖出300557.SZ, 成交量-13488，成交价37.50\n",
      "2020-11-09, 卖出300698.SZ, 成交量-23473，成交价20.99\n",
      "2020-11-09, 卖出300153.SZ, 成交量-14267，成交价46.77\n",
      "2020-11-09, 买入300254.SZ, 成交量37570，成交价12.94\n",
      "2020-11-09, 买入300528.SZ, 成交量55404，成交价8.81\n",
      "2020-11-09, 买入300330.SZ, 成交量18602，成交价26.65\n",
      "2020-11-09, 买入300211.SZ, 成交量667，成交价54.56\n",
      "2020-11-09, 买入300592.SZ, 成交量5826，成交价19.15\n",
      "2020-12-21, 卖出300592.SZ, 成交量-25239，成交价17.92\n",
      "2020-12-21, 买入300211.SZ, 成交量727，成交价41.98\n",
      "2020-12-21, 买入300254.SZ, 成交量2652，成交价10.49\n",
      "2020-12-21, 买入300330.SZ, 成交量432，成交价22.23\n",
      "2020-12-21, 买入300557.SZ, 成交量14443，成交价29.20\n",
      "2020-12-21, 卖出300528.SZ, 成交量-1966，成交价7.88\n",
      "2021-02-02, 卖出300528.SZ, 成交量-53438，成交价7.28\n",
      "2021-02-02, 卖出300211.SZ, 成交量-9700，成交价55.79\n",
      "2021-02-02, 买入300330.SZ, 成交量2694，成交价17.86\n",
      "2021-02-02, 买入300254.SZ, 成交量9253，成交价7.96\n",
      "2021-02-02, 买入300153.SZ, 成交量17565，成交价22.12\n",
      "2021-02-02, 买入300557.SZ, 成交量2247，成交价23.41\n",
      "2021-02-02, 买入300521.SZ, 成交量12847，成交价30.33\n",
      "2021-03-23, 卖出300153.SZ, 成交量-17565，成交价25.26\n",
      "2021-03-23, 卖出300254.SZ, 成交量-2708，成交价8.98\n",
      "2021-03-23, 卖出300330.SZ, 成交量-132，成交价19.46\n",
      "2021-03-23, 买入300698.SZ, 成交量27500，成交价15.22\n",
      "2021-03-23, 卖出300557.SZ, 成交量-660，成交价26.22\n",
      "2021-03-23, 买入300521.SZ, 成交量1251，成交价29.38\n",
      "2021-05-10, 卖出300557.SZ, 成交量-16030，成交价24.33\n",
      "2021-05-10, 卖出300254.SZ, 成交量-46767，成交价10.22\n",
      "2021-05-10, 卖出300698.SZ, 成交量-27500，成交价16.67\n",
      "2021-05-10, 卖出300521.SZ, 成交量-14098，成交价36.37\n",
      "2021-05-10, 买入300330.SZ, 成交量2259，成交价18.77\n",
      "2021-05-10, 买入300479.SZ, 成交量21677，成交价20.69\n",
      "2021-05-10, 买入300700.SZ, 成交量30307，成交价14.69\n",
      "2021-05-10, 买入300615.SZ, 成交量19515，成交价22.86\n",
      "2021-05-10, 买入300688.SZ, 成交量18830，成交价23.73\n",
      "2021-06-22, 卖出300479.SZ, 成交量-21677，成交价26.90\n",
      "2021-06-22, 卖出300615.SZ, 成交量-19515，成交价32.41\n",
      "2021-06-22, 卖出300330.SZ, 成交量-23855，成交价23.14\n",
      "2021-06-22, 买入300534.SZ, 成交量25743，成交价21.29\n",
      "2021-06-22, 买入300688.SZ, 成交量1332，成交价27.37\n",
      "2021-06-22, 买入300700.SZ, 成交量938，成交价17.61\n",
      "2021-06-22, 买入300557.SZ, 成交量19933，成交价27.34\n",
      "2021-06-22, 买入300836.SZ, 成交量15036，成交价36.77\n",
      "2021-08-03, 卖出300836.SZ, 成交量-15036，成交价37.40\n",
      "2021-08-03, 卖出300534.SZ, 成交量-25743，成交价23.58\n",
      "2021-08-03, 买入300688.SZ, 成交量2622，成交价24.93\n",
      "2021-08-03, 买入300313.SZ, 成交量44856，成交价12.47\n",
      "2021-08-03, 买入300330.SZ, 成交量24228，成交价23.06\n",
      "2021-08-03, 卖出300700.SZ, 成交量-926，成交价18.62\n",
      "2021-08-03, 卖出300557.SZ, 成交量-527，成交价28.57\n",
      "2021-09-14, 卖出300313.SZ, 成交量-44856，成交价20.53\n",
      "2021-09-14, 卖出300700.SZ, 成交量-30319，成交价18.66\n",
      "2021-09-14, 卖出300688.SZ, 成交量-22784，成交价43.73\n",
      "2021-09-14, 买入300555.SZ, 成交量31471，成交价22.28\n",
      "2021-09-14, 买入300330.SZ, 成交量7128，成交价22.56\n",
      "2021-09-14, 买入300557.SZ, 成交量4444，成交价29.52\n",
      "2021-09-14, 买入300086.SZ, 成交量26855，成交价26.09\n",
      "2021-09-14, 买入300836.SZ, 成交量19288，成交价36.39\n",
      "2021-11-04, 卖出300557.SZ, 成交量-23850，成交价26.31\n",
      "2021-11-04, 卖出300086.SZ, 成交量-26855，成交价23.73\n",
      "2021-11-04, 卖出300836.SZ, 成交量-19288，成交价31.45\n",
      "2021-11-04, 买入300534.SZ, 成交量32949，成交价19.18\n",
      "2021-11-04, 买入300330.SZ, 成交量866，成交价19.44\n",
      "2021-11-04, 买入300555.SZ, 成交量435，成交价19.88\n",
      "2021-11-04, 买入300807.SZ, 成交量27811，成交价22.80\n",
      "2021-11-04, 买入300345.SZ, 成交量29162，成交价21.67\n",
      "2021-12-16, 卖出300345.SZ, 成交量-29162，成交价23.09\n",
      "2021-12-16, 卖出300807.SZ, 成交量-27811，成交价32.41\n",
      "2021-12-16, 买入300330.SZ, 成交量3104，成交价20.50\n",
      "2021-12-16, 买入300700.SZ, 成交量39965，成交价18.31\n",
      "2021-12-16, 买入300086.SZ, 成交量28854，成交价25.15\n",
      "2021-12-16, 卖出300555.SZ, 成交量-300，成交价22.98\n",
      "2021-12-16, 买入300534.SZ, 成交量437，成交价21.64\n",
      "2022-01-28, 卖出300534.SZ, 成交量-33386，成交价36.70\n",
      "2022-01-28, 卖出300555.SZ, 成交量-31606，成交价20.87\n",
      "2022-01-28, 卖出300700.SZ, 成交量-39965，成交价23.03\n",
      "2022-01-28, 卖出300086.SZ, 成交量-28854，成交价30.76\n",
      "2022-01-28, 卖出300330.SZ, 成交量-35326，成交价19.68\n",
      "2022-01-28, 买入300345.SZ, 成交量42160，成交价21.02\n",
      "2022-01-28, 买入300313.SZ, 成交量67808，成交价12.81\n",
      "2022-01-28, 买入300135.SZ, 成交量27691，成交价31.22\n",
      "2022-01-28, 买入300557.SZ, 成交量30603，成交价28.23\n",
      "2022-01-28, 买入300615.SZ, 成交量32006，成交价27.13\n",
      "2022-03-18, 卖出300557.SZ, 成交量-30603，成交价33.54\n",
      "2022-03-18, 卖出300135.SZ, 成交量-27691，成交价35.79\n",
      "2022-03-18, 卖出300615.SZ, 成交量-32006，成交价25.74\n",
      "2022-03-18, 买入300313.SZ, 成交量4261，成交价12.71\n",
      "2022-03-18, 买入300126.SZ, 成交量38231，成交价23.84\n",
      "2022-03-18, 买入300555.SZ, 成交量44061，成交价20.56\n",
      "2022-03-18, 卖出300345.SZ, 成交量-2385，成交价23.09\n",
      "2022-03-18, 买入300176.SZ, 成交量36604，成交价24.86\n",
      "2022-05-06, 卖出300313.SZ, 成交量-72069，成交价10.03\n",
      "2022-05-06, 卖出300555.SZ, 成交量-44061，成交价17.66\n",
      "2022-05-06, 卖出300176.SZ, 成交量-36604，成交价19.52\n",
      "2022-05-06, 卖出300345.SZ, 成交量-39775，成交价19.73\n",
      "2022-05-06, 买入300321.SZ, 成交量24754，成交价30.47\n",
      "2022-05-06, 买入300594.SZ, 成交量53235，成交价14.33\n",
      "2022-05-06, 买入300637.SZ, 成交量59964，成交价12.79\n",
      "2022-05-06, 买入300126.SZ, 成交量254，成交价19.77\n",
      "2022-05-06, 买入300808.SZ, 成交量76655，成交价9.95\n",
      "2022-06-20, 卖出300808.SZ, 成交量-76655，成交价13.07\n",
      "2022-06-20, 卖出300594.SZ, 成交量-53235，成交价16.72\n",
      "2022-06-20, 买入300321.SZ, 成交量824，成交价34.85\n",
      "2022-06-20, 买入300736.SZ, 成交量36477，成交价23.97\n",
      "2022-06-20, 买入300637.SZ, 成交量1963，成交价14.12\n",
      "2022-06-20, 买入300126.SZ, 成交量1360，成交价21.91\n",
      "2022-06-20, 买入300521.SZ, 成交量44050，成交价19.85\n",
      "2022-08-01, 卖出300126.SZ, 成交量-39845，成交价26.05\n",
      "2022-08-01, 卖出300521.SZ, 成交量-44050，成交价23.63\n",
      "2022-08-01, 买入300321.SZ, 成交量975，成交价36.73\n",
      "2022-08-01, 买入300736.SZ, 成交量1530，成交价25.38\n",
      "2022-08-01, 卖出300637.SZ, 成交量-697，成交价15.78\n",
      "2022-08-01, 买入300779.SZ, 成交量64879，成交价15.00\n",
      "2022-08-01, 买入300380.SZ, 成交量32477，成交价29.61\n",
      "2022-09-13, 卖出300380.SZ, 成交量-32477，成交价30.21\n",
      "2022-09-13, 卖出300736.SZ, 成交量-38007，成交价28.70\n",
      "2022-09-13, 买入300321.SZ, 成交量987，成交价36.67\n",
      "2022-09-13, 买入300594.SZ, 成交量59492，成交价16.92\n",
      "2022-09-13, 买入300637.SZ, 成交量4965，成交价15.13\n",
      "2022-09-13, 卖出300779.SZ, 成交量-2185，成交价16.13\n",
      "2022-09-13, 买入300417.SZ, 成交量25693，成交价39.53\n",
      "2022-11-01, 卖出300417.SZ, 成交量-25693，成交价38.32\n",
      "2022-11-01, 买入300321.SZ, 成交量1420，成交价32.47\n",
      "2022-11-01, 买入300594.SZ, 成交量26，成交价15.75\n",
      "2022-11-01, 买入300637.SZ, 成交量1241，成交价13.90\n",
      "2022-11-01, 买入300736.SZ, 成交量33444，成交价28.29\n",
      "2022-11-01, 卖出300779.SZ, 成交量-1437，成交价15.62\n",
      "2022-12-13, 卖出300779.SZ, 成交量-61257，成交价35.92\n",
      "2022-12-13, 卖出300594.SZ, 成交量-59518，成交价20.85\n",
      "2022-12-13, 卖出300736.SZ, 成交量-33444，成交价37.85\n",
      "2022-12-13, 买入300321.SZ, 成交量8384，成交价34.74\n",
      "2022-12-13, 买入300637.SZ, 成交量23708，成交价14.32\n",
      "2022-12-13, 买入300126.SZ, 成交量57343，成交价22.52\n",
      "2022-12-13, 买入300665.SZ, 成交量70822，成交价18.37\n",
      "2022-12-13, 买入300399.SZ, 成交量49092，成交价26.52\n",
      "2023-02-01, 卖出300399.SZ, 成交量-49092，成交价28.61\n",
      "2023-02-01, 卖出300126.SZ, 成交量-57343，成交价24.07\n",
      "2023-02-01, 卖出300665.SZ, 成交量-70822，成交价17.94\n",
      "2023-02-01, 买入300321.SZ, 成交量16，成交价35.42\n",
      "2023-02-01, 买入300637.SZ, 成交量2397，成交价14.02\n",
      "2023-02-01, 买入300808.SZ, 成交量94312，成交价13.99\n",
      "2023-02-01, 买入300478.SZ, 成交量68879，成交价19.19\n",
      "2023-02-01, 买入300405.SZ, 成交量60936，成交价21.64\n",
      "最终资金: 7647120.22\n",
      "夏普比率: OrderedDict([('sharperatio', 0.9197360020595713)])\n",
      "回撤指标: AutoOrderedDict([('len', 0), ('drawdown', 0.0), ('moneydown', 0.0), ('max', AutoOrderedDict([('len', 296), ('drawdown', 36.481319393034006), ('moneydown', 1684601.9457539977)]))])\n"
     ]
    }
   ],
   "source": [
    "start=datetime(2018,1,2)\n",
    "end=datetime(2023,2,10)\n",
    "stock_daily_part=stock_daily[(stock_daily[\"date\"]>=start)&(stock_daily[\"date\"]<=end)].copy()\n",
    "result=huice_run_num(start,end,buy_date,sell_date,stock_daily_part,stock_list,my_strategy_date_2)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 90,
   "id": "583534a0",
   "metadata": {},
   "outputs": [],
   "source": [
    "s_list=list(stock_columns.keys())"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 91,
   "id": "f441f40b",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "True"
      ]
     },
     "execution_count": 91,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "stock_columns[s_list[0]][0]"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 94,
   "id": "8a3651cb",
   "metadata": {},
   "outputs": [],
   "source": [
    "z1=stock_oneday[s_list[0]].rank(ascending=stock_columns[s_list[0]][0])*stock_columns[s_list[0]][1]\n",
    "for i in s_list[1:]:\n",
    "    z1=z1+stock_oneday[i].rank(ascending=stock_columns[i][0])*stock_columns[i][1]"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 95,
   "id": "019745de",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "date\n",
       "2018-01-02     889.8\n",
       "2018-01-02    1145.1\n",
       "2018-01-02     895.0\n",
       "2018-01-02     703.9\n",
       "2018-01-02     958.0\n",
       "               ...  \n",
       "2018-01-02     525.4\n",
       "2018-01-02     731.0\n",
       "2018-01-02     548.0\n",
       "2018-01-02     662.0\n",
       "2018-01-02    1013.3\n",
       "Length: 650, dtype: float64"
      ]
     },
     "execution_count": 95,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "z1"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 44,
   "id": "bfa25791",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<Axes: xlabel='日期'>"
      ]
     },
     "execution_count": 44,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAABZcAAAFvCAYAAAA2fvX7AAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjcuMCwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy88F64QAAAACXBIWXMAAA9hAAAPYQGoP6dpAAChHUlEQVR4nOzdd3Rc1dm28WuKNOq9WbJc5N6NjQu4gOkG0zsktAQISUihJOFNQkIKfCSBkIQAocX03kuoNsYYcO+9W8VW72U07ftjSx6NJdmSLGkk6/6tNevsU+bMHlkY655Hz7b4fD4fIiIiIiIiIiIiIiLtYA32BERERERERERERESk91G4LCIiIiIiIiIiIiLtpnBZRERERERERERERNpN4bKIiIiIiIiIiIiItJvCZRERERERERERERFpN4XLIiIiIiIiIiIiItJuCpdFREREREREREREpN3s3fVCXq+XvLw8oqOjsVgs3fWyIiIiIiIiIiIiItIOPp+PyspK0tPTsVpbr0/utnA5Ly+PzMzM7no5ERERERERERERETkK2dnZ9O/fv9Xz3RYuR0dHH5xQTExMd72siIiIiIiIiIiIiLRDRUUFmZmZBzPd1nRbuNzYCiMmJkbhsoiIiIiIiIiIiEgPd6T2xlrQT0RERERERERERETaTeGyiIiIiIiIiIiIiLSbwmURERERERERERERaTeFyyIiIiIiIiIiIiLSbgqXRURERERERERERKTdFC6LiIiIiIiIiIiISLspXBYRERERERERERGRdlO4LCIiIiIiIiIiIiLtpnBZRERERERERERERNpN4bKIiIiIiIiIiIjIoYp2BHsGPZ7CZREREREREREREZFG5bnwynfh4eMhb3WwZ9OjKVwWERERERERERERAXA74fmLYPO7YLHAvqXBnlGPZg/2BERERERERERERESCrroYPvoVFG6ByBS45m1IHRPsWfVoCpdFRERERERERESkbzuwHl68HCpyzf45DyhYbgOFyyIiIiIiIiIiItJ31VXAC5dBZR4kDoOz/wpD5gR7Vr2CwmURERERERERERHpmz7+NXzzsBknZMH3P4PwuKBOqTfRgn4iIiIiIiIiIiLS9+xf6w+WAeY9pGC5nVS5LCIiIiIiIiIiIn3Por+Ybeo4uOQpSB4R3Pn0QqpcFhERERERERERkb7F44Ltn5rxhY8pWO4ghcsiIiIiIiIiIiLStxRuBY8THLGQOibYs+m1FC6LiIiIiIiIiIhI33JgndmmjQOLJbhz6cUULouIiIiIiIiIiEjfsn+t2fabENx59HIKl0VERERERERERKRvUbjcKRQui4iIiIiIiIiISN9RWwZ5q804fWIwZ9LrKVwWERERERERERGRvmPD6+Cug+RRkDQ82LPp1RQui4iIiIiIiIiISN+x6jmznfRdLeZ3lBQui4iIiIiIiIiISN9Qtg/2rwGLFcZfHuzZ9HoKl0VERERERERERCQ4vN7ufb1tH5tt5jSITOre1z4GKVwWERERERERERGR7rf0P3BfBuxaBDs+g0dOhNyVXfuajeHy8DO79nX6CHuwJyAiIiIiIiIiIiJ90P9+YbbPntfk2K/g+592zett+QB2fm7Gw8/qmtfoY1S5LCIiIiIiIiIiIt0vLLb5sbK9XfNabie8dQv4vDDpGkgZ1TWv08coXBYREREREREREZGeoSofqos6/77Zy8BZDpEpcM7fO//+fZTCZREREREREREREele9TVQV27Gp/4OZt0BUWlmP3tp57/eri/MNutksKlTcGdpV7g8f/58LBZLs8f8+fO7aHoiIiIiIiIiIiJyzKncb7YhETDz53Dqb2H4GeZYVyzq1zRclk7TrnD5qquuorS09OAjOzubpKQkZs+e3VXzExERERERERERkWNNRZ7ZRvcDi8WME4eabdm+zn2t2jLIW2XGWSd17r37uHbVgIeGhhIaGnpw/5FHHuGiiy4iKyur0ycmIiIiIiIiIiIix6jKA2Ybk+4/FptptuU5nftae74yC/klDoPY/p177z6uww1G6urq+Mc//sHSpS33QHE6nTidzoP7FRUVHX0pEREREREREREROZZUNqlcbtQYLpdlt+9eZdkQkQihEc3P5W+EpY+ZsVpidLoOL+j34osvMn36dAYNGtTi+fvuu4/Y2NiDj8zMzI6+lIiIiIiIiIiIiBxLKhp6Lsc0CZfjGvLDyjzwuI98D48L3v4RPDQWHj8Zlj8FOSv85+sq4MnTYM9is69wudN1OFx+7LHH+MEPftDq+bvuuovy8vKDj+zsdn7iICIiIiIiIiIiIsemiobWF9FN2mJEpoA1xLSwaKxsPpy1L8Oa5824aCt8cBvMPwf2rzXHCjaDq8aMbQ4YNLPz5i9AB8PlHTt2sGPHDk477bRWr3E4HMTExAQ8RERERERERERERCjabraJQ/zHrFaIzTDjDW+Cu/7w91j5X7MdNAssNjN218GbN4PPB4WbG+5rh2vegfC4Tpu+GB3qufzqq68yb948QkJCOns+IiIiIiIiIiIicizzuKB4hxknjww8F5sJpXvgs9+ZquM5/9fyPfI3Qu5KU+l8yX8bKpR98PBUEyoXbjWVywDTfgADT+iqd9Ondahy+aOPPmLOnDmdPRcRERERERERERE5lmz7GD66C2pK/MeKd4LXDaFRENs/8Hpbk2LWbx9t/b7715ntgOkQlQzxAyF+EGSdZI4/fYZ/Ib+UUUf9NqRl7Q6Xa2trWbp0KSecoLRfREREREREREREDuPT38G3j8BfBsOLl5uq5MIt5lzScLBYAq8ffb5/7KyAilZ6L5ftM9uEwYHHR8w127py/zGFy12m3eFyeHg4TqeTkSNHHvliERERERERERER6bsa+x4DbPsI/jkJXrvW7LcU+k66Fn6+ETImm/2dC8DjhtXPm1YXjcr2mm3cgMDnjzgHQiIDjyWNOLr3IK3qUM9lERERERERERERkcPyuP3jcx6AJf/0h8IAyS2EvhaLaZUx5BTTU3n3l1BdZHowW6xw2bMw6lx/5XLcwMDnR6fCrSvA5oDFf4PofuCI6vz3JoDCZREREREREREREekKtY19li0w+XoYfwXsWWz6MGcvg5HzWn9u5nSzzVkOOSvM2Oc1AfWoc1uvXAaISTfbs+7rlLchrVO4LCIiIiIiIiIiIp2vushsw+PBajMVxCPm+vsiH07GJLMt2RV4PH8DuJ1Qnmv2WwqXpdu0u+eyiIiIiIiIiIiIyBHVNITLkUntf25EAiRk+fcnfsf0UnbVwO7F4POANQSi0jpnrtIhCpdFRERERERERESk8zVWLkd0IFwGiEr1j2fdBmnjzHjT22YblwlWxZvBpK++iIiIiIiIiIiIdL6aYrONTOzY86d8v2F7IyQOgX4TzP7q58w2bfzRzU+Omnoui4iIiIiIiIiISOc7WLncwXB57MWQOhaShpv9zKmw7D/+8zN+cnTzk6OmcFlEREREREREREQ6z5YPoGAzVBeY/Y62xbBYIGWkf3/MhbBnMaycD2MugozJRz1VOToKl0VERERERERERKTzvHxV4H5HFvRridUG5/4DTr6r44G1dCqFyyIiIiIiIiIiItI56muaH+vsIDg6rXPvJx2mBf1ERERERERERESkc1TkNT/W0QX9pMdT5bKIiIiIiIiIiIh0jooc/zhpBITFQP+pwZuPdCmFyyIiIiIiIiIiItI5GiuXs+bANW8HdSrS9dQWQ0RERERERERERDpHea7ZxmYEdx7SLRQui4iIiIiIiIiISOdobIsR0z+485BuoXBZREREREREREREOkdj5XJMenDnId1C4bKIiIiIiIiIiIgcPZ8PyrPNWG0x+gSFyyIiIiIiIiIiInL0ProLCreYccKQ4M5FuoXCZRERERERERERETk6Hjcse9yMT7sHEgYHdz7SLRQui4iIiIiIiIiIyNGpyAWfB2yhcOJPgj0b6Sb2YE9AREREREREREREerGSXbDjczOOzQSr6ln7CoXLIiIiIiIiIiIi0jFeL/zzOP9+3IDgzUW6nT5GEBERERERERERkY6pKQ7cV7jcpyhcFhERERERERERkY6p3B+4r3C5T1G4LCIiIiIiIiIiIh1TeSBwP25gcOYhQaFwWURERERERERERDrm0Mrl2P7BmYcEhcJlERERERERERER6ZhDw+XEIcGZhwSFwmURERERERERERHpmMZwefQFcOMCiEoJ6nSkeylcFhERERERERERkY5p7LmcdTJkTA7qVKT7dThc/tWvfsW5557bmXMRERERERERERGR3qSxcjm6X3DnIUFh78iTNmzYwCOPPMLq1as7ez4iIiIiIiIiIiLSWzRWLscoXO6L2l257PP5uPnmm/nZz37GkCFq0C0iIiIiIiIiItIn1ZRAVYEZq3K5T2p3uPzEE0+wZs0aBg8ezPvvv4/L5WrxOqfTSUVFRcBDREREREREREREjhFLHwN8kDYeIpODPRsJgnaFy1VVVfzmN79h2LBh5OTk8OCDDzJ79mzq6uqaXXvfffcRGxt78JGZmdlpkxYREREREREREZEgcjth6X/MeNZtYLEEdz4SFO0Kl998802qq6tZsGABv/3tb/nkk08oKyvj2WefbXbtXXfdRXl5+cFHdnZ2p01aREREREREREREgih7KdSVQWQKjDov2LORIGnXgn45OTlMmzaNhIQE82S7nfHjx7N79+5m1zocDhwOR+fMUkRERERERERERHqOnQvNdsgcsNqCOxcJmnZVLmdmZlJbWxtwbO/evQwc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vKphMT9HLISEdfz+x18Pt23x7/ebcORF84afCdNuMeO81fDOj8DtbP16ZyU8fzHUlkDaOLjqVUgb2/E5i4hIr6NwWURERERERKS7LXvCtL9YdD8cWA+uOnM8b43ZJg09+teI6QdTbgSrHU5s46J5Z/4ZLnrSjMuzYeUzrV/72T1QvB1i+ptg2RZy9HMWEZFeReGyiIiIiIiISHeryPWPH5sJz5wLXg/s/cocGzijc15n7l/gl3uh/+S2XW+1wfhLzfMA1r/mP+f1mm1tKTx/CSx/wuxf8G+ISe+c+YqISK9iD/YERERERERERPqc3NWB+znLYPVzsGeJ2R80s3Nex2oFR1T7nzf0NLPdv8a0xti/Fl64FEbOg6KtkLPcVESf9EvIOrlz5ioiIr2OwmURERERERGR7lRdBOX7zHjYmaaKOX8DfPxrqK8CixUGTA/uHBOyICIRaoph50J4/Xpw1cCa5835sDi49j3oNz6o0xQRkeBSWwwRERERERGR7pTXULWcOAyufhWu/9AEyvVV5ni/iRAWG7TpAWbxv/5TzPh/d5pguak5v1awLCIiCpdFREREREREulXuKrPNmGS2YbGQPsl/fsTc7p9TSxrD5bKGKuuk4f5zx13d/fMREZEeR+GyiIiIiIiISHfKawiXmwbKmVP9454SLo88J3D/smfh1N/BdR9AaGRw5iQiIj2KwmURERERERGR7uLz+SuX04/zH29cQA8gdWz3zqk1KaNg6On+/eSRMOu2zltsUEREej0t6CciIiIiIiLSXSryoLoALDZIG+c/PvRUuOS/JsC1WII3v0Nd+Bh89CsYc1HPmpeIiPQICpdFREREREREusuexWabMhpCIwLPjb2o++dzJJFJcPGTwZ6FiIj0UGqLISIiIiIiItId6srhs9+b8cizgzoVERGRzqBwWURERERERKQ7fPV3qNwPCUNg5s+DPRsREZGjprYYIiIiIiIiIp3J64GcFVC4GYp3wNSbwOaApY+b82f8CULCgztHERGRTqBwWURERERERORolGVD0VbT9iJjMrzxfchZ7j+/6R3w+cBVDenHwYi5wZuriIhIJ1K4LCIiIiIiItJRX9wPX9zb/Lg9HGL6QckuKNtnjiVkwQWPgcXSvXMUERHpIuq5LCIiIiIiIn2DsxK83ubH68rBWdX++/l8sOZ5M47NDDx300L4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IQHjU43QqpSIi9Sg3ubE7BEJiIkIobZ4d8K1iGBX7drr5aR1b7RPREREREREROQDk8tE1DOhJk2ddrkkxB+ny7WCs2YBt74k1/tuac/lALb/Tp7t3NQAOBrkRSjjRwAagzxTXHgAtQG4fz2QNRtwO+TF+QB4vAIVl5rgdHvhcHlxoNQMg0aJO8YPhValDNdPgIiIiIiIiIhoUGJymYj61+7VwGfPXHk+ZLycPB46ASjdBZz+h//ts2YBd6wC4of37jiJiIiIiIiIiKidQHO5qj4cExENJt96FBBeoGSnXLO48qj8KPhIfl+pBeb8Ul4YUW8CNFFA4TZ5m3H3M6lMRERERERERDTAceYyEfU+c4m8SF39OeDsF0BMGnDn74HMGf09MiIiIiIiIiIi6oAzl4lo4DBlALe8IP/d1QSodFykjoiIiIiIiIjoKsfkMhH1LbW+v0dARERERERERERhoOjvARARERERERERERHR1YfJZSIiIiIiIiIiIiIKGpPLRERERERERERERBQ0JpeJiIiIiIiIiIiIKGhMLhMRERERERERERFR0JhcJiIiIiIiIiIiIqKgMblMREREREREREREREFjcpmIiIiIiIiIiIiIgsbkMhEREREREREREREFjcllIiIiIiIiIiIiIgqaqq86EkIAACwWS191SURERERERERERERBasnhtuR0femz5LLVagUApKWl9VWXRERERERERERERBQiq9UKo9Ho831JdJd+DhOv14uLFy8iKioKkiT1RZcDhsViQVpaGsrKyhAdHd3fwyEa8BgzRMFhzBAFhzFDFBzGDFFwGDNEgWO8DFxCCFitViQnJ0Oh8F1Zuc9mLisUCqSmpvZVdwNSdHQ0A4UoCIwZouAwZoiCw5ghCg5jhig4jBmiwDFeBiZ/M5ZbcEE/IiIiIiIiIiIiIgoak8tEREREREREREREFDQml/uAVqvFL3/5S2i12v4eCtFVgTFDFBzGDFFwGDNEwWHMEAWHMUMUOMbL1a/PFvQjIiIiIiIiIiIiomsHZy4TERERERERERERUdCYXCYiIiIiIiIiIiKioDG5TERERERERERERERBY3KZiAaVuro67Ny5E7W1tf09FKKrHuOJKDiMGSIiIiK61gyK5PInn3yC7OxsqFQqTJs2DSdPngQAFBQUYMqUKTCZTHjqqafQcW3Duro6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0UdbP19WVgalUtn6fPHixXjqqacAADk5OcjKysLYsWORmpqKm266qc/3h4iIiIioNzC5TERERETUgUqlQkZGBtxud5ePhQsXQqVSAQCcTidcLhe0Wm3r9jqdDkqlElarFVqtFmvXrkVBQQFefPHFdp8jIiIiIrqaqfp7AEREREREA03bWci+tCSXT58+jXvvvRfNzc0YO3YsAKCiogIKhQJpaWmd2gqkbSIiIiKiqwFnLhMRERERdSBJUrefaUkSjxs3Dvv27YNer0dBQQEKCgrw0EMPYfny5Vi+fHlAbRERERERXY04c5mIiIiIqINAEsIdP9PU1NRu5vITTzzR+rklS5bAYDCgoaEBubm5YR8vEREREVF/YHKZiIiIiKgDSZJQVlaG+Pj4Lt9vbGzE0qVL273WMnMZAFasWNH6usfjwdq1azFnzhxs2LABH330Ue8NnIiIiIioDzG5TERERETUgSRJSEtLQ3FxcZfvP/LII51e8zVz2el09tYwiYiIiIj6FZPLREREREQdCCEC/ozT6YTb7e40c1kIAbfbDYvFgmXLlsFgMKC+vh7jx4/v1bETEREREfUVJpeJiIiIiDoIJrn8hz/8ARs2bEBOTk5rPWUhBJxOJwwGA6qqqrBnzx6kp6ezLAYRERERXVMU/T0AIiIiIqKBxuv1dvsZj8cDAPjZz36Gr7/+GmPGjEF+fj62bduGqVOn4tChQxg+fDji4+ORlpbW20MmIiIiIupznLlMRERERNSBx+PpdkG/RYsWtT5ftmwZ4uLiEBcXByEEzGYzlixZgpKSEjzwwAOQJKmvhk5ERERE1Gc4c5mIiIiIqAOPx4O0tDTU1tZ2+Zg/fz7cbjcAYPPmzaisrMSrr74KQF4M8I033kBERAQOHjyIp59+GgCwZ88erF27FnFxcf22X0RERERE4SSJQArKERERERGRT263GypV+5sCS0tLcfToUdx5550AgIqKCrz22mtYsWIFhg4d2h/DJCIiIiIKKyaXiYiIiIiIiIiIiChoLItBREREREREREREREFjcpmIiIiIiIiIiIiIgsbkMhEREREREREREREFjcllIiIiIiIiIiIiIgoak8tEREREREREREREFDQml4mIiIiIiIiIiIgoaEwuExEREREREREREVHQ/g/f2kSIYDjixwAAAABJRU5ErkJggg==",
      "text/plain": [
       "<Figure size 1800x400 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "index_time_scale=index_time/index_time.iloc[0]\n",
    "index_time_scale.plot(figsize=(18,4))\n",
    "cash_value=pd.Series(result)/1000000\n",
    "cash_value.plot()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "id": "5651f050",
   "metadata": {},
   "outputs": [],
   "source": []
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3 (ipykernel)",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.10.9"
  },
  "toc": {
   "base_numbering": 1,
   "nav_menu": {},
   "number_sections": true,
   "sideBar": true,
   "skip_h1_title": false,
   "title_cell": "Table of Contents",
   "title_sidebar": "Contents",
   "toc_cell": false,
   "toc_position": {
    "height": "calc(100% - 180px)",
    "left": "10px",
    "top": "150px",
    "width": "171.443px"
   },
   "toc_section_display": true,
   "toc_window_display": true
  }
 },
 "nbformat": 4,
 "nbformat_minor": 5
}
